搜档网
当前位置:搜档网 › 数据类型

数据类型

数据类型
数据类型

数据类型

3 4 PrivateTest,Amount,JAsInteger

'注意,在这里Test和Amount是Variant数据类型,只有J是Integer数据类型注意如果不提供数据类型,则指定变量为缺省类型。如上例中注释已说明,如果由于

其它编程语言的经验使人感到同一个声明语句中的所有变量都有相同的指定数据类型(此例中为Integer),那么,此处的结果可能会令人感到新鲜。

种类

数字型

Visual Basic 支持几种Numeric 数据类型— Integer(整型)、Long(长整型)、Single (单精度浮点型)、Double(双精度浮点型)和Currency(货币型)。与Variant 类型相比,Numeric 类型占用的存储空间通常要少。

如果知道变量总是存放整数(如12 )而不是带小数点的数字(如3.57),就应当将它声明为Integer 类型或Long 类型。整数的运算速度较快,而且比其它数据类型占据的

内存要少。在For...Next 循环内作为计数器变量使用时,整数类型尤为有用。

关于控制结构的详细资料(取值范围,储存空间等),请参阅本词条后面的“数据类型概述”。

如果变量包含小数,则可将它们声明为Single、Double 或Currency 变量。Currency 数据类型支持小数点右面4 位和小数点左面15 位;它是一个精确的定点数据类型,适用于货币计算。浮点(Single 和Double)数比Currency 的有效范围大得多,但有可能产生小的进位误差。

浮点数值可表示为mmmEeee 或mmmDeee ,其中mmm 是假数,而eee 是指

数(以10 为底的幂)。Single 数据类型的最大正数值为3.402823E+38,或3.4 乘以10 的38 次方;Double 数据类型的最大正数值是1.79769313486232D+308 或1.8 乘以

10 的308 次方。用D 将数值文字中的假数部分和指数部分隔开,就会导致将该值作为Double 数据类型来处理。同样,用这种方式使用E,也会导致将该值作为Single 数据类型来处理。

字节型

如果变量包含二进制数,则将它声明为Byte 数据类型的数组。(本章后面的“数组”

中将讨论数组)。在转换格式期间用Byte 变量存储二进制数据就可保留数据。当String 变量在ANSI 和Unicode 格式间进行转换时,变量中的任何二进制数据都会遭到破坏。在下列任何一种情况下,Visual Basic 都会自动在ANSI 和Unicode 之间进行转换。

除一元减法外,所有可对整数进行操作的运算符均可操作Byte 数据类型。因为Byte 是从0 - 255 的无符号类型,所以不能表示负数。因此,在进行一元减法运算时,Visual Basic 首先将Byte 转换为符号整数。

所有数值变量都可相互赋值,也可对Variant 类型变量赋值。在将浮点数赋予整数之前,Visual Basic要将浮点数的小数部分四舍五入,而不是将小数部分去掉。

文本型

如果变量总是包含字符串而从不包含数值,就可将其声明为String 类型。

数据库常用数据类型

(1) 整数型 整数包括bigint、int、smallint和tinyint,从标识符的含义就可以看出,它们的表示数范围逐渐缩小。 l bigint:大整数,数范围为-263 (-9223372036854775808)~263-1 (9223372036854775807) ,其精度为19,小数位数为0,长度为8字节。 l int:整数,数范围为-231 (-2,147,483,648) ~231 - 1 (2,147,483,647) ,其精度为10,小数位数为0,长度为4字节。 l smallint:短整数,数范围为-215 (-32768) ~215 - 1 (32767) ,其精度为5,小数位数为0,长度为2字节。 l tinyint:微短整数,数范围为0~255,长度为1字节,其精度为3,小数位数为0,长度为1字节。 (2) 精确整数型 精确整数型数据由整数部分和小数部分构成,其所有的数字都是有效位,能够以完整的精度存储十进制数。精确整数型包括decimal 和numeric两类。从功能上说两者完全等价,两者的唯一区别在于decimal不能用于带有identity关键字的列。 声明精确整数型数据的格式是numeric | decimal(p[,s]),其中p为精度,s为小数位数,s的缺省值为0。例如指定某列为精确整数型,精度为6,小数位数为3,即decimal(6,3),那么若向某记录的该列赋值56.342689时,该列实际存储的是56.3427。 decimal和numeric可存储从-1038 +1 到1038 –1 的固定精度和小数位的数字数据,它们的存储长度随精度变化而变化,最少为5字节,最多为17字节。 l 精度为1~9时,存储字节长度为5; l 精度为10~19时,存储字节长度为9; l 精度为20~28时,存储字节长度为13; l 精度为29~38时,存储字节长度为17。 例如若有声明numeric(8,3),则存储该类型数据需5字节,而若有声明numeric(22,5),则存储该类型数据需13字节。 注意:声明精确整数型数据时,其小数位数必须小于精度;在给精确整数型数据赋值时,必须使所赋数据的整数部分位数不大于列的整数部分的长度。 (3) 浮点型 浮点型也称近似数值型。顾名思义,这种类型不能提供精确表示数据的精度,使用这种类型来存储某些数值时,有可能会损失一些精度,所以它可用于处理取值范围非常大且对精确度要求不是十分高的数值量,如一些统计量。

C语言中数据类型

C语言中数据类型(整形,浮点型,字符型,无值型)2007年04月19日星期四上午11:29整型(int) 一、整型数说明 加上不同的修饰符, 整型数有以下几种类型; signed short int 有符号短整型数说明。简写为short或int, 字长为2字节共16位二进制数, 数的范围是-32768~32767。 signed long int 有符号长整型数说明。简写为long, 字长为4字节共32位二进制数, 数的范围是-2147483648~2147483647。 unsigned short int 无符号短整型数说明。简写为unsigned int, 字长为2字节共16位二进制数, 数的范围是0~65535。 unsigned long int 无符号长整型数说明。简写为unsigned long, 字长为4字节共32位二进制数, 数的范围是0~4294967295。 二、整型变量定义 可以用下列语句定义整型变量 int a, b; /*a、b被定义为有符号短整型变量*/ unsigned long c; /*c被定义为无符号长整型变量*/ 三、整型常数表示 按不同的进制区分, 整型常数有三种表示方法: 十进制数: 以非0开始的数 如:220, -560, 45900 八进制数: 以0开始的数 如:06; 0106, 05788 十六进制数:以0X或0x开始的数 如:0X0D, 0XFF, 0x4e 另外, 可在整型常数后添加一个"L"或"l"字母表示该数为长整型数, 如22L,0773L, 0Xae4l。 浮点型(float) 一、浮点数说明 Turbo C中有以下两种类型的浮点数: float 单浮点数。字长为4 个字节共32 位二进制数, 数的范围是3.4x10-38E~3.4x10+38E。double 双浮点数。字长为8个字节共64 位二进制数, 数的范围是1.7x10-308E~1.7x10+308E。 说明: 浮点数均为有符号浮点数, 没有无符号浮点数。 二、浮点型变量定义 可以用下列语句定义浮点型变量: float a, f; /*a, f被定义为单浮点型变量*/ double b; /*b被定义为双浮点型变量*/

API 中数据类型与PB数据类型对照表

API 中数据类型与PB数据类型对照表 MICROSOFT PB(16Bi t) PB(32Bit) Bool Boolean Boolean Byte, Char Char Char Char* Ref string Ref String Colorref Uint Ulong Double Double Double Dword Uint Ulong Float N/A N/A Handle Uint Ulong Hdc Uint Ulong Hfile Uint Ulong Hinstance Uint Ulong Hwnd Uint Ulong Int Int Int Long Long Long Lparam Uint Ulong Lpbyte Ref Int Ref Long Lpcwstr Ref Blob Ref Blob (Unicode use ToUnicode()) Lpcvoid Ref String Ref String Lpdword Ref Uint R ef Ulong Lpfiletime Ref Time Ref Time Lpint R ef Int Ref Long Lpstr,Lpcstr Ref String Ref String Lpvoid Ref Structstruct_inst Ref Struct struct_inst Lpword Ref Int R ef Ulong Mcierror Long Long Pbyte Ref Int[#] Ref Long[#] Short Int Int Structure Ref Struct struct_inst R ef Struct Struct_inst Uint Uint Uint Void** SUBROUTINE SUBROUTINE Word Uint Uint Wparam Uint Ulong

数据类型(数组和结构)

数据类型 一数组 定义:数组(ARRAY)是由一组同一类型的数据组合在一起而形成的复杂数据类型,数组的维数最大可以到6维。 例如:ARRAY[1..4,1..5,1..6]IN’1’ 这是一个三维数组,1..4,1..5,1..6为数据第1~3维下的标范围;IN’1’为元素类型关键词,定义了一个整数型,大小为4*5*6(等于120个数)的三维数组,可以用数组名加上下标方式来引用数组中的摸个元素,如a【2,1,5】 a表示数组名称,2表示第一位取第二个数据,1表示第二位取第一个数据,5表示第三位取第五个数据 例:全局共享数据块DB3中新建一个变量,变量名为a,变量类型为ARRAYP[1..4,1..5,1..6]IN‘1‘新建的变量如图所示。 1.首先插入一个数据块如下图 数据块名称,例:DB3 如下图

2.双击打开DB3如下图 3.新建一个变量如下图 输入变量如【名称a;类型array[1..4,1..5,1..6];初始值可以为1,2,3】如下图

在下面空格处输入INT也就是整数,这样就建立了a这个数组的变量如下图。

二结构 定义:结构(STRUCT)是由一组不同类型的数组合在一起而形成的复杂数据类型,结构通常用来定义一组相关的数据,例如电机的一组数据可以按如下方式来定义 Motor:STRUCT……..开始结构定义词 Speed:INT Current:REAL END-STRUCT …….结束结构定义 {Speed表示速度,current表示电流,INT定义类型整数,REAL定义类型实数} 例:在共享数据块DB1中新建一个上面的结构如图 1首先新插入一个数据块如DB1,数据类型为共享。双击打开如下图 2把原来的删除掉如下图 3加入定义一个电机(motor),变量名为motor,如下图

Excel中常用的数据类型

Excel中常用的数据类型 在Excel的单元格中可以输入多种类型的数据,如文本、数值、日期、时间等等。下面简单介绍这几种类型的数据。 1.字符型数据。在Excel中,字符型数据包括汉字、英文字母、空格等,每个单元格最多可容纳32000个字符。默认情况下,字符数据自动沿单元格左边对齐。当输入的字符串超出了当前单元格的宽度时,如果右边相邻单元格里没有数据,那么字符串会往右延伸;如果右边单元格有数据,超出的那部分数据就会隐藏起来,只有把单元格的宽度变大后才能显示出来。 如果要输入的字符串全部由数字组成,如邮政编码、电话号码、存折帐号等,为了避免Excel把它按数值型数据处理,在输入时可以先输一个单引号“'”(英文符号),再接着输入具体的数字。例如,要在单元格中输入电话号码“64016633”,先连续输入“'64016633”,然后敲回车键,出现在单元格里的就是“64016633”,并自动左对齐。 2.数值型数据。在Excel中,数值型数据包括0~9中的数字以及含有正号、负号、货币符号、百分号等任一种符号的数据。默认情况下,数值自动沿单元格右边对齐。在输入过程中,有以下两种比较特殊的情况要注意。 (1)负数:在数值前加一个“”号或把数值放在括号里,都可以输入负数,例如要在单元格中输入“66”,可以连续输入“66”“(66)”,然后敲回车键都可以在单元格中出现“66”。 (2)分数:要在单元格中输入分数形式的数据,应先在编辑框中输入“0”和一个空格,然后再输入分数,否则Excel会把分数当作日期处理。例如,要在单元格中输入分数“2/3”,在编辑框中输入“0”和一个空格,然后接着输入“2/3”,敲一下回车键,单元格中就会出现分数“2/3”。 3.日期型数据和时间型数据。在人事管理中,经常需要录入一些日期型的数据,在录入过程中要注意以下几点: (1)输入日期时,年、月、日之间要用“/”号或“-”号隔开,如“2002-8-16”“2002/8/16”。 (2)输入时间时,时、分、秒之间要用冒号隔开,如“10:29:36”。 (3)若要在单元格中同时输入日期和时间,日期和时间之间应该用空格隔开。 (信息技术教育室供稿)

常用数据类型的使用

刚接触编程地朋友往往对许多数据类型地转换感到迷惑不解,本文将介绍一些常用数据类型地使用. 我们先定义一些常见类型变量借以说明 ; ; ; ; []"程佩君"; []; *; ; ; ; 一、其它数据类型转换为字符串 短整型() ()将转换为字符串放入中,最后一个数字表示十进制 (); 按二进制方式转换 长整型() (); 浮点数() 用可以完成转换,这是中地例子: , ; *; ; ( , , , ); 运行结果: : '' : : 资料个人收集整理,勿做商业用途 表示小数点地位置表示符号为正数,为负数 变量 "北京奥运"; ()(); 变量 ("程序员"); * (); 资料个人收集整理,勿做商业用途 (); (); (); 变量 (""); * (); 资料个人收集整理,勿做商业用途 (); (); 变量 类型是对地封装,因为已经重载了操作符,所以很容易使用 ("");

* 不要修改中地内容 (); 通用方法(针对非数据类型) 用完成转换 []; ''; ; ; ; ( , ""); ( , ""); ( , ""); ( , ""); 二、字符串转换为其它数据类型 (,""); 短整型() (); 长整型() (); 浮点() (); 变量 ; 变量 ("程序员"); 完成对地使用 (); 变量 类型变量可以直接赋值 (""); (); 变量 类型地变量可以直接赋值 (""); (); 三、其它数据类型转换到 使用地成员函数来转换,例如: 整数() (""); 浮点数() (""); 字符串指针( *)等已经被构造函数支持地数据类型可以直接赋值 ; 对于所不支持地数据类型,可以通过上面所说地关于其它数据类型转化到*地方法先转到*,

数据结构习题集答案解析_清华大学版

第1章 绪论 1.1 简述下列术语:数据,数据元素、数据对象、数据结构、存储结构、数据类型和抽象数据类型。 解:数据是对客观事物的符号表示。在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。 数据元素是数据的基本单位,在计算机程序常作为一个整体进行考虑和处理。 数据对象是性质相同的数据元素的集合,是数据的一个子集。 数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 存储结构是数据结构在计算机中的表示。 数据类型是一个值的集合和定义在这个值集上的一组操作的总称。 抽象数据类型是指一个数学模型以及定义在该模型上的一组操作。是对一般数据类型的扩展。 1.2 试描述数据结构和抽象数据类型的概念与程序设计语言中数据类型概念的区别。 解:抽象数据类型包含一般数据类型的概念,但含义比一般数据类型更广、更抽象。一般数据类型由具体语言系统部定义,直接提供给编程者定义用户数据,因此称它们为预定义数据类型。抽象数据类型通常由编程者定义,包括定义它所使用的数据和在这些数据上所进行的操作。在定义抽象数据类型中的数据部分和操作部分时,要求只定义到数据的逻辑结构和操作说明,不考虑数据的存储结构和操作的具体实现,这样抽象层次更高,更能为其他用户提供良好的使用接口。 1.3 设有数据结构(D,R),其中 {}4,3,2,1d d d d D =,{}r R =,()()(){}4,3,3,2,2,1d d d d d d r = 试按图论中图的画法惯例画出其逻辑结构图。 解: 1.4 试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。 解: ADT Complex{ 数据对象:D={r,i|r,i 为实数} 数据关系:R={} 基本操作: InitComplex(&C,re,im) 操作结果:构造一个复数C ,其实部和虚部分别为re 和im DestroyCmoplex(&C) 操作结果:销毁复数C Get(C,k,&e) 操作结果:用e 返回复数C 的第k 元的值 Put(&C,k,e) 操作结果:改变复数C 的第k 元的值为e IsAscending(C) 操作结果:如果复数C 的两个元素按升序排列,则返回1,否则返回0 IsDescending(C)

C语言的基本数据类型及其表示

3.2C语言的基本数据类型及其表示 C语言的基本数据类型包括整型数据、实型数据和字符型数据,这些不同数据类型如何表示?如何使用?它们的数据范围是什么?下面我们分别进行介绍。 3.2.1常量与变量 1.常量 常量是指程序在运行时其值不能改变的量,它是C语言中使用的基本数据对 象之一。C语言提供的常量有: 以上是常量所具有的类型属性,这些类型决定了各种常量所占存储空间的大小和数的表示范围。在C程序中,常量是直接以自身的存在形式体现其值和类型,例如:123是一个整型常量,占两个存储字节,数的表示范围是-32768~32767;123.0是实型常量,占四个存储字节,数的表示范围是-3.410-38~3.41038。 需要注意的是,常量并不占内存,在程序运行时它作为操作对象直接出现在运算器的各种寄存器中。 2.符号常量 在C程序中,常量除了以自身的存在形式直接表示之外,还可以用标识符来表示常量。因为经常碰到这样的问题:常量本身是一个较长的字符序列,且在程序中重复出现,例如:取常数的值为3.1415927,如果在程序中多处出现,直接使用3.1415927的表示形式,势必会使编程工作显得繁琐,而且,当需要把的值修改为3.1415926536时,就必须逐个查找并修改,这样,会降低程序的可修改性和灵活性。因此,C语言中提供了一种符号常量,即用指定的标识符来表示某个常量,在程序中需要使用该常量时就可直接引用标识符。 C语言中用宏定义命令对符号常量进行定义,其定义形式如下: #define标识符常量 其中#define是宏定义命令的专用定义符,标识符是对常量的命名,常量可以是前面介绍的几种类型常量中的任何一种。该使指定的标识符来代表指定的常量,这个被指定的标识符就称为符号常量。例如,在C程序中,要用PAI代表实型常量3.1415927,用W代表字符串常量"Windows98",可用下面两个宏定义命令: #define PAI3.1415927 #define W"Windows98" 宏定义的功能是:在编译预处理时,将程序中宏定义(关于编译预处理和宏定义的概念详见9.10节)命令之后出现的所有符号常量用宏定义命令中对应的常量一一替代。例如,对于以上两个宏定义命令,编译程序时,编译系统首先将程序中除这两个宏定义命令之外的所有PAI替换为3.1415927,所有W替换为Windows98。因此,符号常量通常也被称为宏替换名。 习惯上人们把符号常量名用大写字母表示,而把变量名用小写字母表示。例3-1是符号常量的一个简单的应用。其中,PI为定义的符号常量,程序编译时,用3.1416替换所有的PI。 例3-1:已知圆半径r,求圆周长c和圆面积s的值。

数据类型

第四课数据类型 先来简单说说C语言的标识符和关键字。标识符是用来标识源程序中某个对象的名字的,这些对象可以是语句、数据类型、函数、变量、数组等等。C语言是大小字敏感的一种高级语言,如果我们要定义一个定时器1,可以写做"Timer1",如果程序中有"TIMER1",那么这两个是完全不同定义的标识符。标识符由字符串,数字和下划线等组成,注意的是第一个字符必须是字母或下划线,如"1Timer"是错误的,编译时便会有错误提示。有些编译系统专用的标识符是以下划线开头,所以一般不要以下划线开头命名标识符。标识符在命名时应当简单,含义清晰,这样有助于阅读理解程序。在C51编译器中,只支持标识符的前32位为有效标识,一般情况下也足够用了,除非你要写天书:P。 关键字则是编程语言保留的特殊标识符,它们具有固定名称和含义,在程序编写中不允许标识符与关键字相同。在KEIL uVision2中的关键字除了有ANSI C标准的32个关键字外还根据51单片机的特点扩展了相关的关键字。其实在KEIL uVision2的文本编辑器中编写C程序,系统可以把保留字以不同颜色显示,缺省颜色为天蓝色。 先看表4-1,表中列出了KEIL uVision2 C51编译器所支持的数据类型。在标准C语言中基本的数据类型为char,int,short,long,float 和double,而在C51编译器中int和short相同,float和double相同,这里就不列出说明了。下面来看看它们的具体定义:

表4-1 KEIL uVision2 C51编译器所支持的数据类型 1.char字符类型 char类型的长度是一个字节,通常用于定义处理字符数据的变量或常量。分无符号字符类型unsigned char和有符号字符类型signed char,默认值为signed char类型。unsigned char类型用字节中所有的位来表

java的基本数据类型有八种

java的基本数据类型有八种 各位读友大家好!你有你的木棉,我有我的文章,为了你的木棉,应读我的文章!若为比翼双飞鸟,定是人间有情人!若读此篇优秀文,必成天上比翼鸟! java的基本数据类型有八种四类八种基本数据类型1. 整型byte(1字节)short (2个字节)int(4个字节)long (8个字节)2.浮点型float(4个字节)double(8个字节)3.逻辑性boolean(八分之一个字节)4.字符型char(2个字节,一个字符能存储下一个中文汉字)基本数据类型与包装类对应关系和默认值short Short (short)0int Integer 0long Long 0Lchar Char '\u0000'(什么都没有)float Floa t0.0fdouble Double 0.0dboolean Boolean false 若某个类的某个成员是基本数据类型,即使没有初始化,java也会确保它获得一个默认值,如上所示。(这种初始化方法只是用于成员变量,不适用于局部变量)。jdk1.5支持自动拆装箱。可以将基本数据类型转换成它的包装类装箱Integer a = new Integer ();a = 100;拆箱int b = new Intger(100);一个字节等于8位,一个字节等于256个数,-128到127一个英文字母或一个阿拉伯数字就是一个字符,占用一个字节一个汉字两个字符,占用两个字节基本数据类型自动转换byte->short , char->int->longfloat->doubleint ->floatlong->double小可转大,大转小会失去精度。字符串与基本类型或其他类型间的转换⑴其它

MySQL数据表类型 数据类型

表类型 MySQL的数据表类型很多,其中比较重要的是MyISAM,InnoDB这两种。 这两种类型各有优缺点,需要根据实际情况选择适合的,MySQL支持对不同的表设置不同的类型。下面做个对比: 一般情况下我觉得选择MyISAM就行,如果需要事务,或者需要很多用户同时修改某个数据表里的数据时,可以考虑InnoDB数据表。 数据类型 1.整型(xxxint) 右侧的取值范围是在未加unsigned关键字的情况下,如果加了unsigned,则最大值翻倍,如tinyint unsigned的取值范围为(0~256)。 书上说int(m)括弧里的m是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,我测了一下,定义一个字段number 类型为int(4),插入一条记录"123456",用mysql query broswer执行SELECT查询,返回的结果集中123456正确显示,没有影响到显示的宽度,不知道这个m有什么用。 2.浮点型(float和double)

参数m只影响显示效果,不影响精度,d却不同,会影响到精度。 比如设一个字段定义为float(5,3),如果插入一个数123.45678,实际数据库里存的是123.457,小数点后面的数别四舍五入截成457了,但总个数不受到限制(6位,超过了定义的5位)。 3.定点数(decimal) decimal(m,d) 定点类型 浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。参数m是定点类型数字的最大个数(精度),范围为0~65,d小数点右侧数字的个数,范围为0~30,但不得超过m。 对定点数的计算能精确到65位数字。 4.字符串(char,varchar,xxxtext) 1.都可以通过指定n,来限制存储的最大字符数长度,char(20)和varchar(20)将最多只能存储20个字符,超过的字符将会被截掉。n必须小于该类型允许的最大字符数。 2.char类型指定了n之后,如果存入的字符数小于n,后面将会以空格补齐,查询的时候再将末尾的空格去掉,所以char类型存储的字符串末尾不能有空格,varchar不受此限制。 3.内部存储的机制不同。char是固定长度,char(4)不管是存一个字符,2个字符或者4个字符(英文的),都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入一个字符将占用2个字节,2个字符占用3个字节,4个字符占用5个字节。 4.char类型的字符串检索速度要比varchar类型的快。 varchar和text: 1.都是可变长度的,最多能存储65535个字符。 2.varchar可指定n,text不能指定,内部存储varchar是存入的实际字符数+1个字节 (n<=255)或2个字节(n>255),text是实际字符数+2个字节。 3.text类型不能有默认值。

Oracle数据库基本数据类型

oracle基本数据类型

oracle 数据库中讨论char ,varchar ,varchar2 数据类型! 这3种字符串数据类型是我们使用最多的,我们在数据库设计时到底该怎么使用了? 首先我们先来分析3个数据类型的说明: 1。char CHAR的长度是固定的,最长2000个字符。 2。varchar 和 varchar2 可以肯定的是oracle中目前是可以使用varchar数据类型的,但他们的区别我查了不少资料也没有找到一个准确的答案最常见的说话是说oracle中的varchar只是varchar2的别名也就是同义词。 其次也有人认为varchar是最大长度为2000的可变字符串(和sql server中的varchar一致),而varchar2最大长度为4000。 知道了他们的特点我们就来讨论下使用区别 1.char和varchar、varchar2 由于varchar和varchar2用途类似,我们先来讨论char和他们的使用区别: varchar和varchar2比char节省空间,在效率上比char会稍微差一些,即要想获得效率,就必须牺牲一定的空间,这也就是我们在数据库设计上常说的

‘以空间换效率’。 varchar和varchar2虽然比char节省空间,但是如果一个varchar和varchar2列经常被修改,而且每次被修改的数据的长度不同,这会引起‘行迁移’(Row Migration)现象,而这造成多余的I/O,是数据库设计和调整中要尽力避免的,在这种情况下用char代替varchar和varchar2会更好一些。 当然还有一种情况就是象身份证这种长度几乎不变的字段可以考虑使用char,以获得更高的效率。 2。varchar和varchar2 这里就进入重点了,前面的区别我们在sql server中我们已经基本了解了,大家可能都知道,最多也就是复习下,但oracle增加了一个varchar2类型,是大家以前所没有用到过的。 因为oracle保证在任何版本中该数据类型向上和向下兼容,但不保证varchar,还有其他数据中一般都有varchar这个数据类型。 所以我得出了以下结论: 如果想在oracle新版本的数据库兼容就不要用varchar,如果想和oracle 之外其他数据库兼容就不要用varchar2。 ORACLE中的数据类型分类 ORACLE中的数据类型不可谓不多,下面把我这两天来的学习体会写一下吧! 1、字符数据类型:包括我CHAR,VARCHAR2,LONG。 CHAR型可以存储字母数字值,这种数据类型的 列长度可以是1到2000个字节。如果未指明,则默认其占用一个字节,如果用户输入的值小于指定的长度,数据库则用空格填充至固定长度。 VARCHAR2型其实就是VARCHAR,只不过后面多了一个数字2,VARCHAR2就是VARCHAR的同义词,也称别名。数据类型大小在1至4000个字节,但是和CHAR不同的一点是:当你定义了VARCHAR2长度为30,但是你只输入了10个字符,这时VARCHAR2不会像CHAR一样填充,在数据库中只有10具字节。

关于数据库建表时字段数据类型

char、varchar、text、ntext、bigint、int、smallint、tinyint 和bit的区别及数据库的数据类型 基础: char、varchar、text和nchar、nvarchar、ntext的区别 1、CHAR。CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充。 2、VARCHAR。存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。 3、TEXT。text存储可变长度的非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符。 4、NCHAR、NVARCHAR、NTEXT。这三种从名字上看比前面三种多了个“N”。它表示存储的是Unicode数据类型的字符。我们知道字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节

存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。nchar、nvarchar的长度是在1到4000之间。和char、varchar比较起来,nchar、nvarchar 则最多存储4000个字符,不论是英文还是汉字;而char、varchar 最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar 数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。 进一步学习: char、varchar、text、ntext、bigint、int、smallint、tinyint 和bit的区别及数据库的数据类型 Varchar 对每个英文(ASCII)字符都占用2个字节,对一个汉字也只占用两个字节 char 对英文(ASCII)字符占用1个字节,对一个汉字占用2个字节Varchar 的类型不以空格填满,比如varchar(100),但它的值只是"qian",则它的值就是"qian"而char 不一样,比如char(100),它的值是"qian",而实际上它在数据库中是"qian "(qian后共有96个空格,就是把它填满为100个字节)。由于char是以固定长度的,所以它的速度会比varchar快得多!但程序处理起来要麻烦一点,要用trim之类的函数把两边的空格去掉!

基本数据类型

S7-300的数据类型分以下三种: 基本数据类型、复合数据类型和参数类型。 一、基本数据类型 1、位(bit) 常称为BOOL(布尔型),只有两个值:0或1。 如:I0.0,Q0.1,M0.0,V0.1等。 2、字节(Byte)一个字节(Byte)等于8位(Bit),其中0位为最低位,7位为最高位。如:IB0(包括I0.0~I0.7位),QB0(包括Q0.0~Q0.7位),MB0,VB0等。范围:00~FF(十进制的0~255)。 3、字(Word) 相邻的两字节(Byte)组成一个字(Word),来表示一个无符号数,因此,字为16位。 如:IW0是由IB0和IB1组成的,其中I是区域标识符,W表示字,0是字的起始字节。 需要注意的是,字的起始字节(如上例中的“0”)都必须是偶数。 字的范围为十六进制的0000~FFFF(即十进制的0~65536)。 在编程时要注意,如果已经用了IW0,如再用IB0或IB1要特别加以小心。 4、双字(Double Word) 相邻的两个字(Word)组成一个双字,来表示一个无符号数。因此,双字为32位。 如:MD100是由MW100和MW102组成的,其中M是区域标识符,D表示双字,100是双字的起始字节。 需要注意的是,双字的起始字节(如上例中的“100”)和字一样,必须是偶数。 双字的范围为十六进制的0000~FFFFFFFF(即十进制的0~4294967295)。 在编程时要注意,如果已经用了MD100,如再用MW100或MW102要特别加以小心。 以上的字节、字和双字数据类型均为无符号数,即只有正数,没有负数。 5、16位整数(INT,Integer) 整数为有符号数,最高位为符号位,1表示负数,0表示正数。范围为-32768~32767。 6、32位整数(DINT,Double Integer) 32位整数和16位整数一样,为有符号数,最高位为符号位,1表示负数,0表示正数。 范围为-2147483648~2147483647。 7、浮点数(R,Real) 浮点数为32位,可以用来表示小数。浮点数可以为:1.m×2e ,其存储结构如图所示:

MySQL 常用数据类型

MySQL 三种常用的数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 1.数值类型 MySQL支持所有标准SQL数值数据类型。 这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。 关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。 BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。 作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。

2.日期和时间类型 表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。 每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。 TIMESTAMP类型有专有的自动更新特性,将在后面描述。

3.字符串类型 字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。该节描述了这些类型如何工作以及如何在查询中使用这些类型。 注意:

char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。 CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。 BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。 BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。 有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。 以上就是三种常用的MySQL 数据类型的详细内容。

数据类型

在STEP 7-Micro/WIN中编程时,在下列两种情况下您必须识别并使用数据类型: ?如果您以IEC 1131-3模式编程,则必须为全局符号表中的所有数值选择数据类型。 ?如果您在局部变量表中赋值,则必须为每个局部变量定义数据类型。 当您明确地为数值指定数据类型时,您为STEP 7-Micro/WIN提供清晰的指令,指明需要为数值分配多少内存空间(例如,数值100可被存储为字节、字或双字)以及如何表示数值(将0视作布尔值还是数字值?)。 每个SIMATIC和IEC 1131-3指令或参数化子程序均由精确定义识别。该定义可被称为签名。对于所有的标准指令,每个指令操作数允许使用的数据类型集均从签名获得。对于参数化子程序,用户通过局部变量表建立子程序签名。 STEP 7-Micro/WIN V3.0编程软件为SIMA TIC模式执行简单的数据类型检查,为IEC 1131-3模式执行细致的数据类型检查。这意味着为局部或全局变量指定一种数据类型时,软件在下表所列的每个等级中确保操作数数据类型与指令签名相匹配。 基本数据类型数据类型大小说明范围 布尔1位布尔0至1 字节8位不带符号的字节0至255 字节8位带符号的字节(SIMATIC模式仅限用于 SHRB指令) -128至+127 字16位不带符号的整数0至65,535 整数16位带符号的整数-32768至+32767 双字32位不带符号的双整数0至4294967295 双整数32位带符号的双整数-2147483648至+2147483647 实数32位IEEE 32 位浮点+1.175495E-38至+3.402823E+38-1.175495E-38至3.402823E+38 字符串2至255字节 ASCII字符串照原样存储在PLC内存中,形式 为1字符串长度接ASCII数据字节ASCII字符代码128至255 复杂数据类型说明范围 TON 打开接通延时定时器 1 ms10 ms100 ms T32, T96T33 - T36, T97 - T100T37 - T63, T101 -T255 TOF 关闭接通延时定时器 1 ms10 ms100 ms T32, T96T33 - T36, T97 - T100T37 - T63, T101 - 255 TP 脉冲定时器(参阅注释1) 1 ms10 ms100 ms T32, T96T33 - T36, T97 - T100T37 - T63, T101 - 255 CTU 向上计数器0至255 CTD 向下计数器0至255 CTUD 向上/向下计数器0至255 SR 设置主要双稳态触发器无关 RS 复原主要双稳态触发器无关 STEP 7-Micro/WIN 提供三级数据类型检查

c语言的基本数据类型及其表示

3.2 C语言的基本数据类型及其表示 C语言的基本数据类型包括整型数据、实型数据和字符型数据,这些不同数据类型如何表示?如何使用?它们的数据范围是什么?下面我们分别进行介绍。 3.2.1 常量与变量 1. 常量 常量是指程序在运行时其值不能改变的量,它是C语言中使用的基本数据对 象之一。C语言提供的常量有: 以上是常量所具有的类型属性,这些类型决定了各种常量所占存储空间的大小和数的表示范围。在C程序中,常量是直接以自身的存在形式体现其值和类型,例如:123是一个整型常量,占两个存储字节,数的表示范围是-32768~32767;123.0是实型常量,占四个存储字节,数的表示范围是-3.4 10-38~3.4 1038。 需要注意的是,常量并不占内存,在程序运行时它作为操作对象直接出现在运算器的各种寄存器中。 2.符号常量 在C程序中,常量除了以自身的存在形式直接表示之外,还可以用标识符来表示常量。因为经常碰到这样的问题:常量本身是一个较长的字符序列,且在程序中重复出现,例如:取常数的值为3.1415927,如果在程序中多处出现,直接使用3.1415927的表示形式,势必会使编程工作显得繁琐,而且,当需要把的值修改为3.1415926536时,就必须逐个查找并修改,这样,会降低程序的可修改性和灵活性。因此,C语言中提供了一种符号常量,即用指定的标识符来表示某个常量,在程序中需要使用该常量时就可直接引用标识符。 C语言中用宏定义命令对符号常量进行定义,其定义形式如下: #define 标识符常量 其中#define是宏定义命令的专用定义符,标识符是对常量的命名,常量可以是前面介绍的几种类型常量中的任何一种。该使指定的标识符来代表指定的常量,这个被指定的标识符就称为符号常量。例如,在C程序中,要用PAI代表实型常量3.1415927,用W代表字符串常量"Windows 98",可用下面两个宏定义命令: #define PAI 3.1415927

基本数据类型

首先为什么要有数据类型? 数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。例如大胖子必须睡双人床,就给他双人床,瘦的人单人床就够了。 Java中的基本类型从概念上分为四种:整数、浮点、字符、布尔值。总共有八种,其列表如下: 名词解释: 字节(Byte)是:计算机文件大小的基本计算单位。 1个字节(Byte) = 8个位(Bit) Bit意为“位”或“比特”,是计算机运算的基础;二进制中的一位,是二进制最小信息单位.二进位可以用来表示一个简单的正/负的判断,有两种状态的开关(如电灯开关) . 简单换算结果:

1个字节(Byte) = 8个位(Bit) 2个字节(Byte) = 16个位(Bit) 4个字节(Byte) = 32个位(Bit) 8个字节(Byte) = 64个位(Bit) 在内存计算过程中,字节少的数据运算速度更快;在硬盘存储中,字节少的数据类型也可充分存入更多的数据。 Java的基本数据类型讲解如下: int:int为整数类型,在存储的时候,用4个字节存储,范围为-2,147,483,648到2,147,483,647,在变量初始化的时候,int 类型的默认值为0。 short:short也属于整数类型,在存储的时候,用2个字节存储,范围为-32,768到32,767,在变量初始化的时候,short类型的默认值为0,一般情况下,因为Java本身转型的原因,可以直接写为0。 long:long也属于整数类型,在存储的时候,用8个字节存储,范围为-9,223,372,036,854,775,808到9,223,372,036, 854,775,807,在变量初始化的时候,long类型的默认值为0L或0l,也可直接写为0。 byte:byte同样属于整数类型,在存储的时候,用1个字节来存储,范围为-128到127,在变量初始化的时候,byte类型的默认值也为0。 float:float属于浮点类型,在存储的时候,用4个字节来存储,范围为32位IEEEE 754单精度范围,在变量初始化的时候,float

JAVA中常用数据类型之间转换的方法

Java中常用数据类型之间转换的方法 Java中几种常用的数据类型之间转换方法: 1.short-->int转换 exp:short shortvar=0; int intvar=0; shortvar=(short)intvar 2.int-->short转换 exp:short shortvar=0; int intvar=0; intvar=shortvar; 3.int->String转换 exp:int intvar=1; String stringvar; Stringvar=string.valueOf(intvar); 4.float->String转换 exp:float floatvar=9.99f; String stringvar;

Stringvar=String.valueOf(floatvar); 5.double->String转换 exp double doublevar=99999999.99; String stringvar; Stringvar=String.valueOf(doublevar); 6.char->String转换 exp char charvar=’a’; String stringvar; Stringvar=String.valueOf(charvar); 7String->int、float、long、double转换Exp String intstring=”10”; String floatstring=”10.1f”; String longstring=”99999999”; String doubleString=”99999999.9”; Int I=Integer.parseInt(intstring); Float f=Integer.parseInt(floatstring); Long lo=long.parseInt(longstring); Double d=double.parseInt(doublestring); 8String->byte、short转换

相关主题