SQL Server 2000数据类型
SQLServer2000简介new

第一章 SQL Server 2000简介
1.1 数据库的基本概念 1.2 SQL Server 2000简介 1.3 Microsoft SQL Server 2000的特点 1.4 Microsoft SQL Server 2000的数据库体
系结构 1.5 SQL Server数据库的基本概念 1.6 习题
1.51 数据库对象及其引用
1. 数据库对象
表:存放各种数据的载体。 约束:强制实现数据完整性的方法。 默认值:用户没有给出明确值时,系统自动给出的数据值。 规则:当向表的某一列插入或更新数据时的限定取值范围。 索引:实现数据快速检索、并强制实现数据完整性的一种存储结构。 视图: 存储过程:一组预先编译好的、能实现特定数据操作功能的SQL代码
客户机/服务器体系结构
❖ 服务器:管理数据库和为多个用户请求之间分配服务
器资源。
❖ 客户机:发送请求并分析从服务器接受的数据。提供
用户操作界面。
结果
客户端
T-SQl语句
SQL Server
图1-1SQl Server客户机/服务器结构体系
客户机/服务器体系结构
❖ 特点:
服务器负责数据管理及程序处理 客户机负责界面描述和界面显示 客户机向服务器提出处理要求 服务器响应后将处理结果返回客户机 网络数据传数量小
Windows NT版本 ❖ 1996年,Microsoft公司推出了SQL Server 6.5版本 ❖ 1998年,推出了SQL Server 7.0版本 ❖ 2000年推出了SQL Server 2000。
1.3 SQL Server 2000的特点
❖ 真正的客户机/服务器体系结构。 ❖ 图形化用户界面。 ❖ 丰富的编程接口工具。 ❖ SQL Server与Windows NT完全集成。 ❖ 具有很好的伸缩性。 ❖ 对Web技术的支持。 ❖ SQL Server提供数据仓库功能。
sql2000之标识列(identity)用法

--关闭标识列插入
set identity_insert 新表名 off
drop table 旧表名
--创建新表(并设置标识列)
create table 新表名(AutoId int identity(1,1),)
--设置标识列允许插入
set identity_insert 新表名 on
--将数据从临时表转移过来
insert into 新表名(AutoId,)
查询某表中的标识列名
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.columns
WHERE TABLE_NAME='表名'
AND COLUMNPROPERTY(OBJECT_ID('表名'),COLUMN_NAME,'IsIdentity')=1
判段一个表是否具有标识列
Select OBJECTPROPERTY(OBJECT_ID('表名'),'TableHasIdentity') --如果有,则返回1,否则返回0
判断表中的某列是否பைடு நூலகம்标识列
SELECT COLUMNPROPERTY( OBJECT_ID('表名'),'列名','IsIdentity')
在SQL Server 2000中,标识列类型必须是数值类型,如下:
decimal、int、numeric、smallint、bigint 、tinyint
其中要注意的是,当选择decimal和numeric时,小数位数必须为零
SQL-Server-2000数据库表

特定数据类型 新数据类型
TIMESTAMP、UNIQUEIDENTIFIER SQL_VARIANT、TABLE
SQL Server2000提供的数据类型分类
1.2.2 用户自定义数据类型
1. 创建用户自定义数据类型
①启动企业管理器,登录到指定 服务器。
②展开服务器文件夹,并选中 “用户自定义数据类型”选项 夹。
③单击“确定”按钮,即可完 成数据库的分离工作。
1.1.8 附加数据库
①启动SQL Server企业管理器,登录到指定服务器。 ②在SQL Server企业管理器中在要附加的“数据库”图
标上单击鼠标右键,依次在弹出式菜单中选择“所有 任务”→“附加数据库”命令。 ③单击“确定”按钮,即可完成数据库的附加工作。
表示两个或多个表之间的关联。 ▪ 表的关联
表之间的关联又称为关系,它代表了表之间字段的参照关系。 两个不同的表通过特定的字段建立关联,一个表为主键表,另 一个为外键表。 可以在表设计器或关系图中创建关联
1.4 本章小结
▪ 本章介绍了SQL Server数据库支持的数据 类型和数据库表的基本概念,并详细介绍 了如何使用企业管理器来建立和维护数据 库及表。
▪ 本章属于SQL Server的基础操作部分,掌 握本章内容是对数据库管理员的基本要求。
数据库技术与应用
②展开SQL Server数据库文 件夹,在所要压缩的数据 库上单击鼠标右键,依次 在弹出式菜单中选择“所 有任务”→“压缩数据库” 命令。
③直接单击“确定”按钮执 行数据库的压缩操作。
2.设置压缩数据库的选项
1.1.7 分离数据库
①启动SQL Server企业管理器, 登录到指定服务器。
②展开SQL Server数据库文件 夹,在所要分离的数据库 上单击鼠标右键,依次在 弹出式菜单中选择“所有 任务”→“分离数据库”命 令。
SQL_Server2000 示例数据库NorthWind 的分析

SQL_Server2000示例数据库NorthWind的分析表名:Categories(食品类别表)表结构:字段名称数据类型长度允许为空CategoryID(主键) int 4 否 CategoryName nvarchar 15 否Description ntext 是 Picture image 是主键:CategoryID主键约束名称:PK_Categories关系说明:该表主要用来保存食品种类信息的数据。
表名:CustomerCustomerDemo(消费者表)表结构:字段名称数据类型长度允许为空CustomerID(主键) nchar 5 否 CustomerTypeID(主键) nchar 10 否组合主键:CustomerID、CustomerTypeID主键约束名称:PK_CustomerCustomerDemo外键:1.列 CustomerTypeID引用表CustomerDemographics(CustomerTypeID)2.列 CustomerID引用表Customers(CustomerID)外键约束名称:FK_CustomerCustomerDemo和FK_CustomerCustomerDemo_Customers关系说明:该表主要用来保存消费者ID和消费者类别ID信息的数据。
表名:CustomerDemographics(消费者类别说明表)表结构:字段名称数据类型长度允许为空CustomerTypeID(主键) nchar 10 否 CustomerDesc ntext 16 是主键:CustomerTypeID主键约束名称:PK_CustomerDemographics关系说明:该表主要用来存储消费者类别说明信息。
表名:Customers(消费者信息表)表结构:字段名称数据类型长度允许为空CustomerID(主键) nchar 5 否 CompanyName nvarchar 40 否 ContactName nvarchar 30 是 ContactTitle nvarchar 30 是 Address nvarchar 60 是City nvarchar 15 是Region nvarchar 15 是 PostalCode nvarchar 10 是Country nvarchar 15 是Phone nvarchar 24 是Fax nvarchar 24 是主键:CustomerID主键约束名称:PK_Customers关系说明:该表主要用来存储消费者详细信息的数据表。
SQL SERVER2000教程

SQL SERVER2000教程第一章第一节简介SQL Server 2000是微软公司开发的采用SQL语言的关系型数据库管理系统,它拥有高弹性与多元化的结构,不仅符合业界的需要,更能与现今的互联网紧密集成,而对Windows CE/98/NT/2000/XP/2003等操作系统的全面支持的优越性得到最终程序开发人员的普遍认可。
SQL Server2000是服务器级的数据库管理系统,不论是客户机/服务器、多层结构,还是Database Web应用程序,SQL Server 2000都起着后端数据库的角色。
可以说,SQL Server 2000是所有数据的汇总与管理中心,是整个应用系统的枢纽。
第二节数据库分类逻辑数据库(1)系统数据库:系统数据库作为SQLSERVER默认安装的一部分而安装,由系统表和存储过程组成。
系统数据库、表以及存储过程共同为您提供了设计、创建、部署和维护世界级SQLSERVER数据库的工具和支持。
a)Master数据库:是追踪所有其它数据库和配置信息的关键数据库。
它控制着用户数据库和SQLSERVER的操作。
Master数据库对你的信息绝对重要,所以你应该总是保留Master数据库的最近备份。
b)Msdb数据库:是SQLSERVERAgent的主要支持。
SQLSERVERAgent负责复制、任务调度、警报、系统操作员信息以及备份信息。
因此,Msdb也是非常重要的,哪怕你不使用SQLSERVERAgent,在Msdb中的备份信息也有助于数据库的恢复。
c)Model数据库:是一个创建新数据库的模板,它包含了应该出现在每个用户数据库中的系统表。
在创建一个数据库时,SQLSERVER会把Model数据库的全部内容复制到新数据库中。
因此,如果你想每次创建数据库时自动地创建某些对象、权限和用户,你就可以把它们放在Model数据库中。
d)Tempdb数据库:保存所有临时表和临时存储过程。
临时表可以被程序员显示的创建。
第4章 SQL Server 2000 语法基础

(4)比较运算符:包括等于(=)、大于(>)、大于或等于 (>=)、小于(<)、小于或等于(<=)、不等于(<>或!=)、 不小于(!<)、不大于(!>)。 (5)逻辑运算符:包括与(AND)、或(OR)和非(NOT) 等运算符。逻辑运算返回布尔值,值为TRUE或FALSE。
(6)字符串连接运算符(+)
4.1
SQL Server简介
SQL Server是使用客户机/服务器(C/S)体系结构的关系型数 据库管理系统(RDBMS)。1988年推出了第一个OS/2版本,1992 年,SQL Server移植到NT上后,Microsoft成了这个项目的主导者, 1994年以后,Microsoft专注于开发、推广SQL Server的Windows NT版本 1996年,Microsoft公司推出了SQL Server 6.5版本 ,1998 年,推出了SQL Server 7.0版本,2000年推出了SQL Server 2000。
其说明形式如下:
DECLARE @变量名 变量类型 [,@变量名 变量类型…]
其中,变量类型可以是SQL Server支持的所有数据类型,也 可以是用户自定义的数据类型。在Transact-SQL中不能使用“变 量=变量值”给变量赋值,必须使用SELECT或SET命令来设定变 量的值,其语法如下:
SQL Server 2000中的数据库
SQL Server 2000中的数据库
(一)系统数据库
1.master数据库
master数据库记录SQL Server系统的所有系统级别信息。
它记录所有的登录帐户和系统配置设置。
master 数据库是这样一个数据库,它记录所有其它的数据库,其中包括数据库文件的位置。
2.msdb 数据库
msdb 数据库供SQL Server 代理程序调度警报和作业以及记录操作员时使用
3.model 数据库
model 数据库用作在系统上创建的所有数据库的模板
4.tempdb 数据库
tempdb 数据库保存所有的临时表和临时存储过程
(二)示例数据库
1.Northwind数据库(罗斯文数据库)
Northwind示例数据库包含一个名为Northwind Traders 的虚构公司的销售数据,该公司从事世界各地的特产食品进出口贸易
2.pubs数据库
pubs 示例数据库以一个图书出版公司为模型,用于演示SQL Server数据库中可用的许多选项。
该数据库及其中的表经常在文档内容所介绍的示例中使用
(三)Northwid数据库有关表说明。
SQLServer2000数据类型
SQL Server为了实现T-SQL的良好性能,提供了丰富的数据类型。
一、数值型数据1.BigintBigint型数据可以存放从-263到263-1范围内的整型数据。
以bigint数据类型存储的每个值占用8个字节,共64位,其中63位用于存储数字,1位用于表示正负。
2.IntInt也可以写作integer,可以存储从-231~231-1(-2,147,483,648~2,147,483,647)范围内的全部整数。
以int数据类型存储的每个值占用4个字节,共32位,其中31位用于存储数字,1位用于表示正负的区别。
3.smallintSmallint型数据可以存储从-215~215- 1(-32,768~32,767)范围内的所有整数。
以smallint 数据类型存储的每个值占用2个字节,共16位,其中15位用于存储数字,1位用于表示正负的区别。
4.TinyintTinyint型数据可以存储0~255范围内的所有整数。
以tinyint数据类型存储的每个值占用1个字节。
整数型数据可以在较少的字节里存储较大的精确数字,而且存储结构的效率很高,所以平时在选用数据类型时,尽量选用整数数据类型。
5.Decimal和Numeric事实上,numeric数据类型是decimal数据类型的同义词。
但是二者也有区别,在表格中,只有numeric型数据的列可以带有identity关键字,decimal可以简写为dec。
使用decimal和numeric型数据可以精确指定小数点两边的总位数(精度,precision简写为p)和小数点右面的位数(刻度,scale简写为s)。
在SQL Server中,decimal和numeric型数据的最高精度的可以达到38位,即1≤p≤38,0≤s≤p。
decimal和numeric型数据的刻度的取值范围必须小于精度的最大范围,也就是说必须在-1038-1~1038-1之间。
SQL Server分配给decimal和numeric型数据的存储空间随精度的不同而不同,一般说来对应的比例关系如下所示:精度范围分配字节数1~9 510~19 920~28 1329~38 176.float和realReal型数据范围从-3.40E+38~1.79E+38,存储时使用4个字节。
SQL Server 2000数据类型
SQL Server 2000数据类型一、字符型1、char 最大长度为8000个字符。
说明:NOT NULL 则字符的存储长度和指定的一致,实际字符不足设定长度,后面补空格NULL并且ANSI_PADING ON 则同NOT NULL;OFF则将后面的空格截取。
2、varchar二、数值型BIGINT、INT、SMALLINT、TINYINT 长度分别是8、4、2、1个字节。
三、小数DECIMAL、NUMERIC decimal(12,5)表示小数点左边是7位,右边是5位,小数不占位置。
四、货币型MONEY、SMALLMONEY分别占8个和4个字节。
INSERT INTO 货币表V ALUES ($123.45,CAST(’$456.78’ AS MONEY))五、日期和时间DATETIME、SMALLDATETIME表示范围分别是:8个字节,4个字节存放日期、4个字节存放时间1753.1.1~9999.12.31SAMLLDATETIME用4字节,1900.1.1~2079.12.31六、二进制类型比特流,一般存放16进制数,譬如安全标识码等七、TEXT和IMAGE类型TEXT用来存放变长的、非Unicode类型、超过8000字节的字符类型,最长可存2GB。
SP_TABLEOPTION用来强制TEXT存放于表中,称为“text in row”特性。
譬如:设定存储切点为2400(最大可以是7000个字节)EXEC SP_TABLEOPTION ‘履历’,‘text in row’,2400IMAGE也就是BLOB(大二进制对象),表中只存放一地址,图象本身存放于数据库的其他一组页中。
注意:1、设计时要谨慎考虑这些字段的使用,因为对这些类型列的操作很麻烦,而且对这些字段数据修改没有日志记录。
2、TEXT一般用来存放无格式的文本数据。
如果需要存放WORD或EXCEL文件,必须用IMAGE。
3、可以对word、excel、powerpoint、HTML文件进行全文检索。
sqlserver2000数据库系统介绍
12
创建数据库具体步骤如下: 创建数据库具体步骤如下: (1) 展开服务器组,然后展开服务器。右击"数据库",然 展开服务器组,然后展开服务器。右击"数据库" 后单击"新建数据库"命令。如图所示: 后单击"新建数据库"命令。如图所示:
建立数据库
13
(2) 出现如图所示的“数据库属性”对话框。该对话框共有三个选项卡: 出现如图所示的“数据库属性”对话框。该对话框共有三个选项卡: 常规” 数据文件” 事务日志” 常规” “常规”、“数据文件”和“事务日志”。在“常规” 选项卡的名 称文本框中键入新数据库的名称“DZSW” 此时,选择“确定” 称文本框中键入新数据库的名称“DZSW”。此时,选择“确定”按 Server将创建一个 DZSW”数据库 将创建一个“ 数据库。 钮,SQL Server将创建一个“DZSW”数据库。此数据库中包括用 DZSW”数据库名作为前缀创建主数据库和事务日志文件 数据库名作为前缀创建主数据库和事务日志文件, “DZSW”数据库名作为前缀创建主数据库和事务日志文件,即: DZSW.mdf 和 DZSW _Log.ldf。 _Log.ldf。
创建数据库界面
17
(2)在如图中名称处键入新数据库的名称“DZSW” 在如图中名称处键入新数据库的名称“ ” 等,点击下一步,按照向导配置数据库文件和事物日 点击下一步, 志文件属性。 志文件属性。
创建数据库向导
18
修改数据库
数据库创建后,当一些新的情况发生时, 数据库创建后,当一些新的情况发生时,经常 会对数据库进行修改。例如:针对DZSW数据库中, 数据库中, 会对数据库进行修改。例如:针对 数据库中 订单大增,数据库原有容量不能满足新的需求。 订单大增,数据库原有容量不能满足新的需求。这 只有修改数据库来满足新的需求。 时,只有修改数据库来满足新的需求。 使用企业管理器修改数据库 数据库建好后经常要更改数据库的配置设置。 数据库建好后经常要更改数据库的配置设置。 这一功能在企业管理器中是通过修改数据库属性来 完成的。 完成的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL Server 2000数据类型分类:数据库2008-06-26 17:16 1428人阅读评论(2) 收藏举报在计算机中数据有两种特征:类型和长度。
所谓数据类型就是以数据的表现方式和存储方式来划分的数据的种类。
在SQL Server 中每个变量、参数、表达式等都有数据类型。
系统提供的数据类型分为几大类,如下表所示。
其中,BIGINT、SQL_VARIANT 和TABLE 是SQL Server 2000 中新增加的3 种数据类型。
下面分类讲述各种数据类型。
4.3.1 整数数据类型整数数据类型是最常用的数据类型之一。
1、INT (INTEGER)INT (或INTEGER)数据类型存储从-2的31次方(-2 ,147 ,483 ,648)到2的31次方-1 (2 ,147 ,483,647)之间的所有正负整数。
每个INT 类型的数据按4 个字节存储,其中1 位表示整数值的正负号,其它31 位表示整数值的长度和大小。
2、SMALLINT SMALLINT 数据类型存储从-2的15次方(-32,768)到2的15次方-1(32 ,767 )之间的所有正负整数。
每个SMALLINT 类型的数据占用2 个字节的存储空间,其中1 位表示整数值的正负号,其它15 位表示整数值的长度和大小。
3、TINYINT TINYINT数据类型存储从0 到255 之间的所有正整数。
每个TINYINT类型的数据占用1 个字节的存储空间。
4、BIGINT BIGINT 数据类型存储从-2^63 (-9 ,223,372,036,854,775,807)到2^63-1(9,223,372,036 ,854 ,775,807)之间的所有正负整数。
每个BIGINT 类型的数据占用8个字节的存储空间。
4.3.2 浮点数据类型浮点数据类型用于存储十进制小数。
浮点数值的数据在SQL Server 中采用上舍入(Round up 或称为只入不舍)方式进行存储。
所谓上舍入是指,当(且仅当)要舍入的数是一个非零数时,对其保留数字部分的最低有效位上的数值加1 ,并进行必要的进位。
若一个数是上舍入数,其绝对值不会减少。
如:对3.14159265358979 分别进行2 位和12位舍入,结果为3.15 和3.141592653590。
1、REAL 数据类型REAL数据类型可精确到第7 位小数,其范围为从-3.40E -38 到3.40E +38。
每个REAL类型的数据占用4 个字节的存储空间。
2、FLOAT FLOAT数据类型可精确到第15 位小数,其范围为从-1.79E -308 到1.79E +308。
每个FLOAT 类型的数据占用8 个字节的存储空间。
FLOAT 数据类型可写为FLOAT[ n ]的形式。
n 指定FLOAT 数据的精度。
n 为1到15 之间的整数值。
当n 取1 到7 时,实际上是定义了一个REAL 类型的数据,系统用4 个字节存储它;当n 取8 到15 时,系统认为其是FLOAT 类型,用8 个字节存储它。
3、DECIMAL DECIMAL数据类型可以提供小数所需要的实际存储空间,但也有一定的限制,您可以用2 到17 个字节来存储从-10的38次方-1 到10的38次方-1 之间的数值。
可将其写为DECIMAL[ p [s] ]的形式,p 和s 确定了精确的比例和数位。
其中p 表示可供存储的值的总位数(不包括小数点),缺省值为18;s 表示小数点后的位数,缺省值为0。
例如:decimal (15 5),表示共有15 位数,其中整数10 位,小数5。
位表4-3 列出了各精确度所需的字节数之间的关系。
4、NUMERIC NUMERIC数据类型与DECIMAL数据类型完全相同。
注意:SQL Server 为了和前端的开发工具配合,其所支持的数据精度默认最大为28位。
但可以通过使用命令来执行sqlserver.exe程序以启动SQL Server,可改变默认精度。
命令语法如下:SQLSERVR[/D master_device_path][/Pprecisim_leve1] 例4-4: 用最大数据精度38 启动SQL Server sqlservr /d c:/ Mssql2000/data/master.dat /p38 /*在使用了/P 参数后,如果其后没有指定具体的精度数值,则默认为38 位./*4.3.3 二进制数据类型1、BINARY BINARY 数据类型用于存储二进制数据。
其定义形式为BINARY (n),n 表示数据的长度,取值为1 到8000 。
在使用时必须指定BINARY 类型数据的大小,至少应为1 个字节。
BINARY 类型数据占用n+4 个字节的存储空间。
在输入数据时必须在数据前加上字符“0X” 作为二进制标识,如:要输入“abc ”则应输入“0xabc ”。
若输入的数据过长将会截掉其超出部分。
若输入的数据位数为奇数,则会在起始符号“0X ”后添加一个0,如上述的“0xabc ”会被系统自动变为“0x0abc”。
2、VARBINARY VARBINARY数据类型的定义形式为VARBINARY(n)。
它与BINARY 类型相似,n 的取值也为1 到8000,若输入的数据过长,将会截掉其超出部分。
不同的是VARBINARY数据类型具有变动长度的特性,因为VARBINARY数据类型的存储长度为实际数值长度+4个字节。
当BINARY数据类型允许NULL 值时,将被视为VARBINARY数据类型。
一般情况下,由于BINARY 数据类型长度固定,因此它比VARBINARY 类型的处理速度快。
4.3.4 逻辑数据类型BIT:BIT数据类型占用1 个字节的存储空间,其值为0 或1 。
如果输入0 或1 以外的值,将被视为1。
BIT 类型不能定义为NULL 值(所谓NULL 值是指空值或无意义的值)。
4.3.5 字符数据类型字符数据类型是使用最多的数据类型。
它可以用来存储各种字母、数字符号、特殊符号。
一般情况下,使用字符类型数据时须在其前后加上单引号’或双引号” 。
1 CHAR CHAR 数据类型的定义形式为CHAR[ (n)]。
以CHAR 类型存储的每个字符和符号占一个字节的存储空间。
n 表示所有字符所占的存储空间,n 的取值为1 到8000,即可容纳8000 个ANSI 字符。
若不指定n 值,则系统默认值为1。
若输入数据的字符数小于n,则系统自动在其后添加空格来填满设定好的空间。
若输入的数据过长,将会截掉其超出部分。
2、NCHAR NCHAR数据类型的定义形式为NCHAR[ (n)]。
它与CHAR 类型相似。
不同的是NCHAR数据类型n 的取值为1 到4000。
因为NCHAR 类型采用UNICODE 标准字符集(CharacterSet)。
UNICODE 标准规定每个字符占用两个字节的存储空间,所以它比非UNICODE 标准的数据类型多占用一倍的存储空间。
使用UNICODE 标准的好处是因其使用两个字节做存储单位,其一个存储单位的容纳量就大大增加了,可以将全世界的语言文字都囊括在内,在一个数据列中就可以同时出现中文、英文、法文、德文等,而不会出现编码冲突。
3、VARCHAR VARCHAR数据类型的定义形式为VARCHAR [ (n)]。
它与CHAR 类型相似,n 的取值也为1 到8000,若输入的数据过长,将会截掉其超出部分。
不同的是,VARCHAR数据类型具有变动长度的特性,因为VARCHAR数据类型的存储长度为实际数值长度,若输入数据的字符数小于n ,则系统不会在其后添加空格来填满设定好的空间。
一般情况下,由于CHAR 数据类型长度固定,因此它比VARCHAR 类型的处理速度快。
4、NVARCHAR NVARCHAR数据类型的定义形式为NVARCHAR[ (n)]。
它与VARCHAR 类型相似。
不同的是,NVARCHAR数据类型采用UNICODE 标准字符集(Character Set),n 的取值为1 到4000。
4.3.6 文本和图形数据类型这类数据类型用于存储大量的字符或二进制数据。
1、TEXT TEXT数据类型用于存储大量文本数据,其容量理论上为1 到2的31次方-1 (2,147,483,647)个字节,在实际应用时需要视硬盘的存储空间而定。
SQL Server 2000 以前的版本中,数据库中一个TEXT 对象存储的实际上是一个指针,它指向一个个以8KB (8192 个字节)为单位的数据页(Data Page)。
这些数据页是动态增加并被逻辑链接起来的。
在SQL Server 2000 中,则将TEXT 和IMAGE 类型的数据直接存放到表的数据行中,而不是存放到不同的数据页中。
这就减少了用于存储TEXT 和IMA- GE 类型的空间,并相应减少了磁盘处理这类数据的I/O 数量。
2 NTEXT NTEXT数据类型与TEXT.类型相似不同的,是NTEXT 类型采用UNICODE 标准字符集(Character Set), 因此其理论容量为230-1(1, 073, 741, 823)个字节。
3 IMAGE IMAGE数据类型用于存储大量的二进制数据Binary Data。
其理论容量为2的31次方-1(2,147,483,647)个字节。
其存储数据的模式与TEXT 数据类型相同。
通常用来存储图形等OLE Object Linking and Embedding,对象连接和嵌入)对象。
在输入数据时同BINARY数据类型一样,必须在数据前加上字符“0X”作为二进制标识4.3.7 日期和时间数据类型1 DATETIME DATETIME 数据类型用于存储日期和时间的结合体。
它可以存储从公元1753 年1 月1 日零时起到公元9999 年12 月31 日23 时59 分59 秒之间的所有日期和时间,其精确度可达三百分之一秒,即3.33 毫秒。
DATETIME 数据类型所占用的存储空间为8 个字节。
其中前4 个字节用于存储1900 年1 月1 日以前或以后的天数,数值分正负,正数表示在此日期之后的日期,负数表示在此日期之前的日期。
后4 个字节用于存储从此日零时起所指定的时间经过的毫秒数。
如果在输入数据时省略了时间部分,则系统将12:00:00:000AM作为时间缺省值:如果省略了日期部分,则系统将1900 年1 月1 日作为日期缺省值。
2 SMALLDATETIME SMALLDATETIME 数据类型与DATETIME 数据类型相似,但其日期时间范围较小,为从1900 年1 月1 日到2079 年6 月6:日精度较低,只能精确到分钟,其分钟个位上为根据秒数四舍五入的值,即以30 秒为界四舍五入。