SQL Server数据库应用与开发:第03章 表和数据完整性
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
据。下表数列据出类了型SQL Server支字持节二数进制数
据类bi型na。ry(n)
1~8 000
varbinary(n)
1~8 000
varbinary(max)
最多2 G
image
最多2 G
SQL Server 2005数据库应用与开发
3.1 SQL Server2005的数据类型
3.1.5 其他数据类型
SQL Server 2005数据库应用与开发
3.1 SQL Server2005的数据类型
3.1.5 其他数据类型
3. 自定义数据类型 SQL Server 2005允许用户根据自己的需要自定义
数据类型(UDT),并可以用此数据类型来声明 变量或列。 自定义类型提供了一种可以将更能清楚地说明对象 中值的类型的名称应用于数据类型的机制,这使程 序员或数据库管理员能够更容易地理解用该数据类 型定义的对象的用途。
SQL Server 2005数据库应用与开发
3.2表的创建与维护
3.2.2 表的创建
1.在SQL
列序号
Server
Ma列n名agemen类t 型Studi取o值中说创明 建数
据表 1
studentno nchar(10) 主键
首先以创建2 如表s所nam示e 的学nc生har(信8) 息表否 student表
数或定点小数in。t 使用任4 何算-2术E3运1~算2E符31-1 都可以In操teg作er这sm些al数lint据类2 型中-3存2 7储68~的3数2 767 值,而不需要任何特殊处理。下表列 出了SQL Sertvineyrin支t 持1的精确0~数25值5 类型。
Exact decimal(p,s) 5~17 -10E38+1~10E38-1
(1)永久表:包括SQL Server 2005的系统表和用户数据库中 创建的数据表,该类表除非人工删除,否则一直存储在介 质中。
(2)临时表:临时表是临时使用的表结构。临时表分为全局 的临时表和局部临时表,并且可以由任何用户创建。所有 的临时表都是在tempdb数据库中创建的。 如果服务器关闭,则所有临时表会被清空、关闭。 通过使用CREATE TABLE命令并在表名前添加一个字 符(#),可以创建局部临时表。
SQL Server 2005数据库应用与开发
3.1 SQL Server2005的数据类型
3.1.2 字符数据类类型型 字节数
字符数
字用符AS类CchⅡ型ar是编(n用码) 于或存Un储ico字d1符e~编型8码0数0。0据的最。多该8数00据0个类字型符可以使 ASvCaⅡrch编ar码(n要) 求用81个~二8 进00制0 位最来多表8示0字00母个的字范符围。
SQL Servernc2u0m05r数i 据nu库ms)应er用ic(与p, 开5发~17
-10E38+1~10E38-1
3.1 SQL Server2005的数据类型
3.1.5 其他数据类型
1. 二进制数据类型
SQL Server 2005提供了3种二进制数据类型,
允许在一个表中存储各种数量的二进制数
(3)已分区表:已分区表是将数据水平划分为多个单元的表, 这些单元可以分布到数据库中的多个文件组中。在维护整 个集合的完整性时,使用分区可以快速而有效地访问或管 理数据子集,从而使大型表或索引更易于管理。
SQL Server 2005数据库应用与开发
3.2 表的创建与维护
3.2.1表的类型
2. 按照表的存储时间分类
s起m表al示lda自te1ti9dma0t0ee类 年tim型1e月存1储日为午8 一夜对122点字从3钟1,1节7经精5整3过-度1数-的为1,到3分.9它393钟9毫们9数-秒一12。 下类表型列。出了smSQallLdaSteetrimveer24005支持从3的1,19日精00期-度1-和为1到1时分20间钟79数-12据-
(3)在弹出的如图所示的“表设计器”窗口中,依 次输入列名、数据类型及允许空否等选项。 列名\数据类型与列长度\允许空
SQL Server 2005数据库应用与开发
3.2表的创建与维护
3.2.2 表的创建
1.在SQL Server Management Studio中创建 数据表
(4)依次类推,设置其他列的名称、数据类型、列长度和 允许空等选项,并单击“保存”按钮。
SQL server 2005提供的数据类型可以归纳为:数 值类型、字符类型、日期时间类型、货币类型和 其他SQ数L S据erv类er 型200。5数据库应用与开发
3.1 SQL Server2005的数据类型
3.1.1 数值类别类型数据类型 1. 精确数值类型
字节 数
取值范围
精确数值类型用bi来gin存t 储8没有小-2数E6位3~的2E整63-1
数或定点小数in。t 使用任4 何算-2术E3运1~算2E符31-1 都可以In操teg作er这sm些al数lint据类2 型中-3存2 7储68~的3数2 767 值,而不需要任何特殊处理。下表列 出了SQL Sertvineyrin支t 持1的精确0~数25值5 类型。
Exact decimal(p,s) 5~17 -10E38+1~10E38-1
数据完整性则是保证表中数据正确与完整的关键。
本章将介绍各种数据类型的特点和用途,数据表的创 建、修改、管理与数据格式转换,以及实现数据完 整性的方法和基本操作。
SQL Server 2005数据库应用与开发
第03章 表和数据完整性
本章内容 3.1 SQL Server2005的数据类型 3.2 表的创建与维护 3.3 数据的完整性 3.4 数据库关系图 3.5 数据的导入和导出 3.6 小结
smallmoney 4
-214 748.3648~214 748.3647
SQL Server 2005数据库应用与开发
3.1 SQL Server2005的数据类型
3.1.1 数值类别类型数据类型 1. 精确数值类型
字节 数
取值范围
精确数值类型用bi来gin存t 储8没有小-2数E6位3~的2E整63-1
数或定点小数in。t 使用任4 何算-2术E3运1~算2E符31-1 都可以In操teg作er这sm些al数lint据类2 型中-3存2 7储68~的3数2 767 值,而不需要任何特殊处理。下表列 出了SQL Sertvineyrin支t 持1的精确0~数25值5 类型。
Exact decimal(p,s) 5~17 -10E38+1~10E38-1
结构为例3 ,说明sex如何为n数char据(1) 库te否aching创建
表,具体4 步骤如bir下thda。y datetime 否
5
classno
nchar(6)
否
6
point
smallint
否
7
phone
nchar(12) 否
8
nchar(20) 否
SQL Server 2005数据库应用与开发
入SQ。L只S有er数v在e据r精2类确00型5数存据储类数字型据节不时数够对大小,取数不值点能范右存围边储的数数值进时行,四才舍五考 虑类型使用floflaota。t(下p)表列出4了/8SQL Se-r2v.e2r3支E3持08的~近2.似23数E3字08数据
real
4
-3.4E38~3.4E38
SQL Server 2005数据库应用与开发
3.1 SQL Server2005的数据类型
3.1.3 日期时间类型
日期时间类型数据,可具体分为datetime与 smalldatetime两种类型。datetime和smalldatetime 数据类型在计算机内部是作为整数存储的。
datetime类型存储为一对4字节整数,它们一起表 示自1753年1日月期1日类型午夜1字2点节钟数 经过的毫取秒值范数围。
2. 特殊数据类型
SQL Server 2005还提供了7种特殊数据类型,包括cursor、 sql_variant、timestamp、table、uniqueidentifier与xml。 timestamp 用于表示SQL server 活动的先后顺序,以二 进投影的格式表示。timestamp 数据与插入数据或者日 期和时间没有关系。 bit 由 1 或者 0 组成,当表示真或者假、on 或者 off 时, 使用 bit 数据类型。 uniqueidentifier 由 16 字节的十六进制数字组成,表示 一个全局唯一的。 当表的记录行要求唯一时,GUID是非常有用。 具体作用参看表3.7
Unvicaordchea标r(准ma使x)用2个最字大节2 来G 表示最每多个1 字07符3 7。41在824个字符
U符n。tiecxotde标准中,包最括大了2以G各种最字多符1集0定73义74的1 全82部4个字字符 在SQLncshearrv(enr) 2005中,2~Un8ic0o0d0e数最据多以4n0c0h0a个r、字n符varchar
SQL Servernc2u0m05r数i 据nu库ms)应er用ic(与p, 开5发~17
-10E38+1~10E38-1
3.1 SQL Server2005的数据类型
3.1.1 数值类别类型数据类型 1. 精确数值类型
字节 数
取值范围
精确数值类型用bi来gin存t 储8没有小-2数E6位3~的2E整63-1
SQL Server 2005数据库应用与开发
3.1 SQL Server2005的数据类型
数据库中的所有数据都存放在按行与列格式组织 的表中,数据类型是数据的一种属性,决定数据存 储的空间和格式.
数据类型可以为对象定义4个属性: 对象包含的数据种类。 所存储值占有的空间(字节数)和数值范围。 数值的精度(仅适用于数值类型)。 数值的小数位数(仅适用于数值类型)。
SQL Server 2005数据库应用与开发
3.2表的创建与维护
3.2.1表的类型
1. 按照表的用途分类
(1)系统表:用于维护SQL Server 2005服务器和数据库正常 工作的只读数据表。系统表存在于各个数据库中,由 DBMS系统自动维护。
(2)用户表:由用户自己创建的、用于各种数据库应用系统 开发的表。
和 ntenxvt a数rc据ha类r(n型) 存储2。~定8义00一0 个最字多符4数0据00类个型字时符,指定
该列允n许var存ch储ar的(m最ax大) 字最节大数2。G 最多536 870 912个字符 下表列n出tex了t SQL Serve最r支大持2的G字符最数多据5类36型87。0 912个字符
3.2表的创建与维护
3.2.2 表的创建
1.在SQL Server Management Studio中创建数 据表
(1)启动SQL Server Management Studio,在“对 象资源管理器”中,展开要新建表的数据库 teaching。
(2)右击“表”项,在快捷菜单里选择“新建表” 项,
SQL Servernc2u0m05r数i 据nu库ms)应er用ic(与p, 开5发~17
-10E38+1~10E38-1
3.1 SQL Server2005的数据类型
3.1.1 数值类型
2. 近似数值类型
近似数字数据类型可以存储十进制值,用于表示 浮点数据。此类型的数据不一定有精确的表示,可 具体分为float和real两种。
(5)右击studentno列,在弹出的快捷菜单中选择“设置主 键”命令,或者使用“设置主键”按钮来设置主键,如 图所示,设置主键为studentQL Server2005的数据类型
3.1.4货币类型
货币数据类型旨在存储精确到4个小数位的 货币值。下表列出了SQL Server支持的货 币数据类型。
数据类型 字节数
取值范围
money
8
-922 337 203 685 477.5808~ 922 337 203 685 477.5807
SQL Server 2005 数据 库应用与开发
第03章 表和数据完整性
内容提要:
表是SQL Server数据库中最重要的数据对象,也是 构建高性能数据库的基础。在程序开发与应用过程 中,表是存储数据的基本单元。
数据表设计的优劣将影响磁盘空间使用效率、数据 处理时内存的利用率以及数据的查询效率。