SQLSEVER2000中数据类型

作者&投稿:笃阀 (若有异议请与网页底部的电邮联系)
sql server 2000中建表时,里面的数据类型是什么意思?~

所谓数据类型就是以数据的表现方式和存储方式来划分的数据的种类。
举个通俗点的例子:
2010-08-01 10:00:00//这个东西你一看就知道是时间
712//这个是数字七百一十二
weuuytg//这个是一串字符
我想这上面的东西你一看就知道它是什么。为什么呢?因为这是规则。
sql定义数据类型也一样,把符合一定规则的东西定义成一种数据类型,并提供一些方法供你使用。
例如:
"234"和"897"
如果你把上面的东西都当成是一串字符而不是数字,如何做比较呢?
所以你就可以把这样的数据定义成整型或数值型,这样就可以进行判断比较了。

在自定义数据类型里,建立自定义数据类型,名称比如叫YesOrNo
类型为nchar,长度为1

然后到规则里新建规则,名称比如叫YesOrNo_rule,在规则的文本框里输入
@value in ('是','否') 。

然后你就可以在表的设计模式里选这个自定义类型了。

PS:说错了,应该先建立规则,然后再建立自定义数据类型的时候绑定这个规则。如果是用存储过程创建类型和规则的话,就不用这个顺序了。(这里用这个顺序,是担心遗漏了数据类型和规则的绑定)

1.SQL SERVER的数据类型

数据类弄是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。当然,不同的程序语言都具有不同的特点,所定义的数据类型的各类和名称都或多或少有些不同。SQLServer 提供了 25 种数据类型:
·Binary [(n)]
·Varbinary [(n)]
·Char [(n)]
·Varchar[(n)]
·Nchar[(n)]
·Nvarchar[(n)]
·Datetime
·Smalldatetime
·Decimal[(p[,s])]
·Numeric[(p[,s])]
·Float[(n)]
·Real
·Int
·Smallint
·Tinyint
·Money
·Smallmoney
·Bit
·Cursor
·Sysname
·Timestamp
·Uniqueidentifier
·Text
·Image
·Ntext (1)二进制数据类型

二进制数据包括 Binary、Varbinary 和 Image
Binary 数据类型既可以是固定长度的(Binary),也可以是变长度的。
Binary[(n)] 是 n 位固定的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储窨的大小是 n + 4 个字节。
Varbinary[(n)] 是 n 位变长度的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储窨的大小是 n + 4个字节,不是n 个字节。
在 Image 数据类型中存储的数据是以位字符串存储的,不是由 SQL Server 解释的,必须由应用程序来解释。例如,应用程序可以使用BMP、TIEF、GIF 和 JPEG 格式把数据存储在 Image 数据类型中。 (2)字符数据类型

字符数据的类型包括 Char,Varchar 和 Text
字符数据是由任何字母、符号和数字任意组合而成的数据。
Varchar 是变长字符数据,其长度不超过 8KB。Char 是定长字符数据,其长度最多为 8KB。超过 8KB 的ASCII 数据可以使用Text数据类型存储。例如,因为 Html 文档全部都是 ASCII 字符,并且在一般情况下长度超过 8KB,所以这些文档可以 Text 数据类型存储在SQL Server 中。 (3)Unicode 数据类型

Unicode 数据类型包括 Nchar,Nvarchar 和Ntext
在 Microsoft SQL Server 中,传统的非 Unicode 数据类型允许使用由特定字符集定义的字符。在 SQL Server安装过程中,允许选择一种字符集。使用 Unicode 数据类型,列中可以存储任何由Unicode 标准定义的字符。在 Unicode 标准中,包括了以各种字符集定义的全部字符。使用Unicode数据类型,所战胜的窨是使用非 Unicode 数据类型所占用的窨大小的两倍。
在 SQL Server 中,Unicode 数据以 Nchar、Nvarchar 和 Ntext 数据类型存储。使用这种字符类型存储的列可以存储多个字符集中的字符。当列的长度变化时,应该使用Nvarchar 字符类型,这时最多可以存储 4000 个字符。当列的长度固定不变时,应该使用 Nchar 字符类型,同样,这时最多可以存储4000 个字符。当使用 Ntext 数据类型时,该列可以存储多于 4000 个字符。 (4)日期和时间数据类型

日期和时间数据类型包括 Datetime 和 Smalldatetime两种类型
日期和时间数据类型由有效的日期和时间组成。例如,有效的日期和时间数据包括“4/01/98 12:15:00:00:00 PM”和“1:28:29:15:01AM 8/17/98”。前一个数据类型是日期在前,时间在后一个数据类型是霎时间在前,日期在后。在 Microsoft SQL Server中,日期和时间数据类型包括Datetime 和 Smalldatetime 两种类型时,所存储的日期范围是从 1753 年 1 月 1 日开始,到9999 年12 月 31 日结束(每一个值要求 8 个存储字节)。使用 Smalldatetime 数据类型时,所存储的日期范围是 1900年 1 月 1日 开始,到 2079 年 12 月 31 日结束(每一个值要求 4 个存储字节)。
日期的格式可以设定。设置日期格式的命令如下:
Set DateFormat {format | @format _var|
其中,format | @format_var 是日期的顺序。有效的参数包括 MDY、DMY、YMD、YDM、MYD 和 DYM。在默认情况下,日期格式为MDY。
例如,当执行 Set DateFormat YMD 之后,日期的格式为年 月 日 形式;当执行 Set DateFormat DMY 之后,日期的格式为日 月有年 形式 (5)数字数据类型

数字数据只包含数字。数字数据类型包括正数和负数、小数(浮点数)和整数
整数由正整数和负整数组成,例如 39、25、0-2 和 33967。在 Micrsoft SQL Server 中,整数存储的数据类型是 Int,Smallint和 Tinyint。Int 数据类型存储数据的范围大于 Smallint 数据类型存储数据的范围,而 Smallint 据类型存储数据的范围大于Tinyint 数据类型存储数据的范围。使用 Int 数据狗昔存储数据的范围是从 -2 147 483 648 到 2 147 483 647(每一个值要求4个字节存储空间)。使用 Smallint 数据类型时,存储数据的范围从 -32 768 到 32 767(每一个值要求2个字节存储空间)。使用Tinyint 数据类型时,存储数据的范围是从0 到255(每一个值要求1个字节存储空间)。
精确小娄数据在 SQL Server 中的数据类型是 Decimal 和 Numeric。这种数据所占的存储空间根据该数据的位数后的位数来确定。
在SQL Server 中,近似小数数据的数据类型是 Float 和 Real。例如,三分之一这个分数记作。3333333,当使用近似数据类型时能准确表示。因此,从系统中检索到的数据可能与存储在该列中数据不完全一样。 (6)货币数据表示正的或者负的货币数量 。

在 Microsoft SQL Server 中,货币数据的数据类型是Money 和 Smallmoney Money数据类型要求 8 个存储字节,Smallmoney 数据类型要求 4 个存储字节。 (7)特殊数据类型

特殊数据类型包括前面没有提过的数据类型。特殊的数据类型有3种,即 Timestamp、Bit 和 Uniqueidentifier。
Timestamp 用于表示SQL Server 活动的先后顺序,以二进投影的格式表示。Timestamp 数据与插入数据或者日期和时间没有关系。
Bit 由 1 或者 0 组成。当表示真或者假、ON 或者 OFF 时,使用 Bit 数据类型。例如,询问是否是每一次访问的客户机请求可以存储在这种数据类型的列中。
Uniqueidentifier 由 16 字节的十六进制数字组成,表示一个全局唯一的。当表的记录行要求唯一时,GUID是非常有用。例如,在客户标识号列使用这种数据类型可以区别不同的客户。 2.用户定义的数据类型

用户定义的数据类型基于在 Microsoft SQL Server 中提供的数据类型。当几个表中必须存储同一种数据类型时,并且为保证这些列有相同的数据类型、长度和可空性时,可以使用用户定义的数据类型。例如,可定义一种称为 postal_code 的数据类型,它基于 Char 数据类型。
当创建用户定义的数据类型时,必须提供三个数:数据类型的名称、所基于的系统数据类型和数据类型的可空性。 (1)创建用户定义的数据类型

创建用户定义的数据类型可以使用 Transact-SQL 语句。系统存储过程 sp_addtype 可以来创建用户定义的数据类型。其语法形式如下:
sp_addtype {type},[,system_data_bype][,'null_type']
其中,type 是用户定义的数据类型的名称。system_data_type 是系统提供的数据类型,例如 Decimal、Int、Char 等等。 null_type 表示该数据类型是如何处理空值的,必须使用单引号引起来,例如'NULL'、'NOT NULL'或者'NONULL'。
例子:
Use cust
Exec sp_addtype ssn,'Varchar(11)',"Not Null'
创建一个用户定义的数据类型 ssn,其基于的系统数据类型是变长为11 的字符,不允许空。
例子:
Use cust
Exec sp_addtype birthday,datetime,'Null'
创建一个用户定义的数据类型 birthday,其基于的系统数据类型是 DateTime,允许空。
例子:
Use master
Exec sp_addtype telephone,'varchar(24),'Not Null'
Eexc sp_addtype fax,'varchar(24)','Null'
创建两个数据类型,即 telephone 和 fax (2)删除用户定义的数据类型

当用户定义的数据类型不需要时,可删除。删除用户定义的数据类型的命令是 sp_droptype {'type'}。
例子:
Use master
Exec sp_droptype 'ssn'
注意:当表中的列还正在使用用户定义的数据类型时,或者在其上面还绑定有默认或者规则时,这种用户定义的数据类型不能删除。

SQL SERVER的字段类型说明

以下为SQL SERVER7.0以上版本的字段类型说明。SQL SERVER6.5的字段类型说明请参考SQL SERVER提供的说明。

字段类型 描述
bit 0或1的整型数字
int 从-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型数字
smallint 从-2^15(-32,768)到2^15(32,767)的整型数字
tinyint 从0到255的整型数字

decimal 从-10^38到10^38-1的定精度与有效位数的数字
numeric decimal的同义词

money 从-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的货币数据,最小货币单位千分之十
smallmoney 从-214,748.3648到214,748.3647的货币数据,最小货币单位千分之十

float 从-1.79E+308到1.79E+308可变精度的数字
real 从-3.04E+38到3.04E+38可变精度的数字

datetime 从1753年1月1日到9999年12日31的日期和时间数据,最小时间单位为百分之三秒或3.33毫秒
smalldatetime 从1900年1月1日到2079年6月6日的日期和时间数据,最小时间单位为分钟

timestamp 时间戳,一个数据库宽度的唯一数字
uniqueidentifier 全球唯一标识符GUID

char 定长非Unicode的字符型数据,最大长度为8000
varchar 变长非Unicode的字符型数据,最大长度为8000
text 变长非Unicode的字符型数据,最大长度为2^31-1(2G)

nchar 定长Unicode的字符型数据,最大长度为8000
nvarchar 变长Unicode的字符型数据,最大长度为8000
ntext 变长Unicode的字符型数据,最大长度为2^31-1(2G)

binary 定长二进制数据,最大长度为8000
varbinary 变长二进制数据,最大长度为8000
image 变长二进制数据,最大长度为2^31-1(2G)

这些多了哈。有
char
varchar
int( long int, small int)
text
time
binar
还有别的哈,只想到这些哈。


SQL数据库瘦身问题
--首先,用下面的语句,检查\/修复数据库\/并整理索引碎片(需要比较长的时间,请在系统空闲时进行此工作)USE MASTER GO sp_dboption '你的数据库名', 'single user', 'true'Go DBCC CHECKDB('你的数据库名', REPAIR_REBUILD)Go USE 你的数据库名 go exec sp_msforeac...

推荐几本javaEE的书籍,经典的。不要李刚的(虽然讲的好,但是繁琐,基础...
4《Hadoop权威指南》注:该类型书也有Head First系列,也很不错。另外《J2EE应用与BEA WebLogic Server》书也很不错。星级:适合对象:中级,高级介绍:云计算必备图书。作为分布式计算的工具,Hadoop目前可以说是市场上唯一成熟的产品,而且大家也都向其看齐。而起云计算炙手可热,你搞明白这本书就大概明白了什么是云以及...

Java培训班的课程一般都学习什么内容呢?
Java培训一般要学习下面四种内容:1、掌握Java语言的使用:语言语法、程序逻辑,OOP(面向对象)思想,封装、继承、多态,集合框架、泛型、File I\\O技术,多线程技术、socket网络编程,XML技术。编程有关的操作系统基本使用,HTML5规范、HTML5文档结构、HTML5元素、Web语义化;CSS3规范、CSS3选择器、层叠与...

病毒Win32.Troj.Agent.122880
要解决这个问题可以通过修改注册表来解决,打开注册表,找到HKEY—LOCAL—MACHNE\\SYSTEM\\CurrentControlSet\\Services\\lanmanserver,在右面新建一个名为";maxworkitems";的DWORD值.然后双击该值,如果你的电脑有512以上内存,就设置为";1024";,如果小于512,就设置为256. [b]一些不完善的驱动程序也可以造成CPU使用率过高[\/...

信州区14712202823: SQL Server 2000 提供了哪些基本数据类型? -
黎饶氨酚: master,model,msdb,northwind,pubs,tempdb pubs 示例数据库 pubs 示例数据库以一个图书出版公司为模型,用于演示 Microsoft® SQL Server™ 数据库中可用的许多选项.该数据库及其中的表经常在文档内容所介绍的示例中使用. Northwind ...

信州区14712202823: sql server 2000引入了哪三种新的数据类型 -
黎饶氨酚: SQL Server 2000 引入了三种新的数据类型:bigint 是 8 字节的整型类型,sql_variant 类型允许存储不同数据类型的数据值,table 类型允许应用程序临时存储结果供以后使用.table 类型可用于变量,并可作为用户定义函数的返回数据类型.

信州区14712202823: sql2000字段类型有哪些? -
黎饶氨酚: (1)char、varchar、text和nchar、nvarchar、ntext char和varchar的长度都在1到8000之间,它们的区别在于char是定长字符数据,而varchar是变长字符数据.所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在...

信州区14712202823: sql server 2000中建表时,里面的数据类型是什么意思? -
黎饶氨酚: 所谓数据类型就是以数据的表现方式和存储方式来划分的数据的种类.举个通俗点的例子:2010-08-01 10:00:00//这个东西你一看就知道是时间712//这个是数字七百一十二weuuytg//这个是一串字符我想这上面的东西你一看就知道它是什么.为什么呢?因为这是规则.sql定义数据类型也一样,把符合一定规则的东西定义成一种数据类型,并提供一些方法供你使用.例如:"234"和"897"如果你把上面的东西都当成是一串字符而不是数字,如何做比较呢?所以你就可以把这样的数据定义成整型或数值型,这样就可以进行判断比较了.

信州区14712202823: SQL Server2000的字符型系统数据类型主要包括
黎饶氨酚: Char:定长字符型,比如设定了长度为8,即使你存储的字符只有两位,系统也会自动补充6位空格,保持整个字符长度为8.主要用于码表级字段,比如人员编号,肯定是固定长度的,才会使用这个字段类型,优点是查询速度快. nChar:定长...

信州区14712202823: sql server 2000 中的数据类型问题?
黎饶氨酚: 1 日期一般都是datetime 占18位 2 不能对数据类型 int 指定列宽度. 3.varchar(20)最大也是8000个字节,所以如字多的话,那就用text. 它可以装2G

信州区14712202823: 要把文件存入SQL SERVER 2000,请问用什么数据类型?
黎饶氨酚: 如果是纯文本文件,可以用Text. 如果文件中有一些特殊符号(不可见字符),则必须使用Image, 否则只能存前面一点东西,写进去的东西不正确.Word文档要使用Image.

信州区14712202823: sql server 2000的数据类型与access 2000有什么不同
黎饶氨酚: access的 string是文本 text是备注 int是数字 datetime是时间 其他的记不住了 CREATE TABLE t1(id INT,infotitle STRING(50),infobody TEXT,infitime DATETIME DEFAULT NOW()) 对应sql的 CREATE TABLE t1(id INT,infotitle NVARCHAR(50),infobody TEXT,infitime DATETIME DEFAULT GETDATE())

信州区14712202823: sql server 2000 数据类型中是否型怎么表示?
黎饶氨酚: 在自定义数据类型里,建立自定义数据类型,名称比如叫YesOrNo 类型为nchar,长度为1 然后到规则里新建规则,名称比如叫YesOrNo_rule,在规则的文本框里输入 @value in ('是','否') . 然后你就可以在表的设计模式里选这个自定义类型了. PS:说错了,应该先建立规则,然后再建立自定义数据类型的时候绑定这个规则.如果是用存储过程创建类型和规则的话,就不用这个顺序了.(这里用这个顺序,是担心遗漏了数据类型和规则的绑定)

信州区14712202823: SQL Server 2000支持的整数型数据类型包括bigint、int、smallint、tinyint,其中int的数值范围是多少?
黎饶氨酚:-231到231-1 B) -231到231-1

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网