SQLSERVER2000数据库及应用第3章数据表的创建和管理_第1页
SQLSERVER2000数据库及应用第3章数据表的创建和管理_第2页
SQLSERVER2000数据库及应用第3章数据表的创建和管理_第3页
SQLSERVER2000数据库及应用第3章数据表的创建和管理_第4页
SQLSERVER2000数据库及应用第3章数据表的创建和管理_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章 数据表的创建和管理北华航天工业学院李伟红本章学习目标n掌握SQL Server 2000中的数据类型;n掌握如何创建数据表;n了解创建和删除自定义数据类型的方法;n掌握增加、删除和修改表中字段的方法;n掌握查看数据表的定义和表中数据的方法;n掌握删除数据表的方法。3.1 数据类型n为了在数据库中存储不同类型的数据,SQL Server 2000提供了丰富的数据类型,包括系统数据类型和用户自定义数据类型。3.1.1 系统数据类型n系统数据类型是SQL Server预先定义好的,用户可以直接使用。SQL Server 2000提供的系统数据类型有以下几大类,共25种。1整型数据类型n(1)

2、int(integer)n(2)smallintn(3)tinyint2浮点数据类型n浮点数据类型用于存储十进制小数。n(1)real:每个real类型的数据占用4个字节的存储空间。n(2)float:可以精确到第15位小数。n(3)decimal和numeric。3字符数据类型n(1)char:其定义形式为:char(n)n(2)varchar:用varchar数据类型可以存储长达8 000个字符的可变长度字符串。n(3)nchar:nchar数据类型采用unicode(统一字符编码标准)字符集。n(4)Nvarchar:nvarchar是使用unicode字符集的varchar数据类型。4

3、日期和时间数据类型n(1)datetime:用于存储日期和时间的结合体。所占用的存储空间为8个字节。n(2)smalldatetime:与datetime数据类型类似,但其日期时间范围较小。5文本和图形数据类型n(1)text:用于存储大容量文本数据。n(2)ntext:ntext数据类型采用unicode标准字符集。n(3)image:用于存储照片、目录图片或者图画。6货币数据类型n(1)money:用于存储货币值。n(2)smallmoney:与money数据类型类似,但范围比money数据类型小。7位数据类型nbit称为位数据类型,其数据有两种取值:0和1。8二进制数据类型n(1)bin

4、ary:二进制数据类型的最大长度(即n的最大值)为8000,常用于存储图像等数据。n(2)varbinary:数据的存储长度是变化的,它为实际所输入数据的长度加上4字节。其他含义同binary。n在输入二进制常量时,需在该常量前面加一个前缀0 x。9特殊数据类型n(1)timestamp:也称作时间戳数据类型。n(2)uniqueidentifier:也称作惟一标识符数据类型。uniqueidentifier用于存储一个16字节长的二进制数据类型。10新增数据类型nSQL Server 2000新增了三种数据类型,即bigint、sql_variant和table。n(1)bigint:每个b

5、igint类型的数据占用8个字节的存储空间。n(2)sql_variant:用于存储除文本、图形数据和timestamp类型数据外的其他任何合法的SQL Server数据。n(3)table:用于存储对表或者视图处理后的结果集。3.1.2 自定义数据类型n1创建用户自定义数据类型n例3-1 在BOOKS数据库中定义一个新的数据类型,类型名称为“图书编码类型”,字符型,长度为12位,不允许为空。1创建用户自定义数据类型n例3-2 使用系统存储过程定义一个新的数据类型,类型名称为“价格类型”,货币型,允许为空。n程序清单如下:nUSE BOOKSnGOnEXECUTE sp_addtype 价格类

6、型, money, null2删除用户自定义数据类型n删除用户自定义数据类型的方法有两种,即使用企业管理器或者使用系统存储过程sp_droptype。n例3-3 删除前面定义的数据类型“价格类型”。2删除用户自定义数据类型n例3-4 删除用户自定义数据类型“图书编码类型”。n程序清单如下:nUSE BOOKSnGOnEXECUTE sp_droptype 图书编码类型3.2 创建数据表n一个完整的数据表主要包括两部分,即数据表结构和表中的记录。因此,创建一个新的数据表主要分为两步:第一步是先创建数据表的结构,第二步是录入表中的数据。3.2.1 在企业管理器中创建数据表n在企业管理器中,打开想要

7、创建新表的数据库,右击“表”对象,或者在窗口右侧中的表显示窗口中右击,从弹出的快捷菜单中选择“新建表”命令。n例3-5 创建一个新的数据表,表名为“图书基本信息表”。3.2.2 利用Transact-SQL语言创建表nCREATE TABLEn database_name. owner .| owner. table_namen( | column_name AS computed_column_expression|n ,n)n ON filegroup | DEFAULT n TEXTIMAGE_ON filegroup | DEFAULT n := column_name data_ty

8、pe 3.2.2 利用Transact-SQL语言创建表n COLLATE n DEFAULT constant_expression n| IDENTITY ( seed , increment ) NOT FOR REPLICATION n ROWGUIDCOLn .n 3.2.2 利用Transact-SQL语言创建表n := CONSTRAINT constraint_name n NULL | NOT NULL n| PRIMARY KEY | UNIQUE n CLUSTERED | NONCLUSTERED n WITH FILLFACTOR = fillfactor nON f

9、ilegroup | DEFAULT n3.2.2 利用Transact-SQL语言创建表n|FOREIGN KEY (column ,n)nREFERENCES ref_table ( ref_column ,n) nNOT FOR REPLICATIONn| CHECK NOT FOR REPLICATION n( logical_expression )n3.2.2 利用Transact-SQL语言创建表n := CONSTRAINT constraint_name n PRIMARY KEY | UNIQUE n CLUSTERED | NONCLUSTERED n ( column

10、ASC | DESC ,.n ) n WITH FILLFACTOR = fillfactor n ON filegroup | DEFAULT n3.2.2 利用Transact-SQL语言创建表n| FOREIGN KEYn ( column ,.n ) nREFERENCES ref_table ( ref_column ,.n ) n NOT FOR REPLICATION n| CHECK NOT FOR REPLICATION n( search_conditions )n 3.2.2 利用Transact-SQL语言创建表n其中各参数的说明如下:ndatabase_name:用于

11、指定所创建表的数据库名称。database_name 必须是现有数据库的名称。如果不指定数据库,database_name 默认为当前数据库。3.2.2 利用Transact-SQL语言创建表nowner:用于指定新建表的所有者的用户名,owner 必须是 database_name 所指定的数据库中的现有用户名,owner 默认为当前注册用户名。3.2.2 利用Transact-SQL语言创建表ntable_name:用于指定新建表的名称。表名必须符合标识符规则。对于数据库来说,database_name、owner_name及object_name 必须是惟一的。表名最多不能超过 128

12、个字符。3.2.2 利用Transact-SQL语言创建表ncolumn_name:用于指定新建表的列名。ncomputed_column_expression:用于指定计算列的列值表达式。3.2.2 利用Transact-SQL语言创建表nON filegroup | DEFAULT:用于指定存储表的文件组名。如果指定 filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果使用了DEFAULT选项,或者省略了ON子句,则新建的表会存储在默认的文件组中。3.2.2 利用Transact-SQL语言创建表nTEXTIMAGE_ON:用于指定text、ntext和image

13、列的数据存储的文件组。如果表中没有text、ntext或image列,则不能使用TEXTIMAGE_ON。如果没有指定TEXTIMAGE_ON子句,则text、ntext和image列的数据将与数据表存储在相同的文件组中。3.2.2 利用Transact-SQL语言创建表ndata_type:用于指定列的数据类型。nDEFAULT:用于指定列的默认值。nconstant_expression:用于指定列的默认值的常量表达式,可以为一个常量或NULL或系统函数。3.2.2 利用Transact-SQL语言创建表nIDENTITY:用于将列指定为标识列。nseed:用于指定标识列的初始值。ninc

14、rement:用于指定标识列的增量值。3.2.2 利用Transact-SQL语言创建表nNOT FOR REPLICATION:用于指定列的IDENTITY属性,在把从其他表中复制的数据插入到表中时不发生作用,即不生成列值,使得复制的数据行保持原来的列值。nROWGUIDCOL:用于将列指定为全局惟一标识行号列。3.2.2 利用Transact-SQL语言创建表nCOLLATE:用于指定表的校验方式。ncolumn_constraint和table_constraint:用于指定列约束和表约束。3.2.2 利用Transact-SQL语言创建表n例3-6 在数据库BOOKS中创建一个新表“读

15、者基本信息表”。3.3 修改数据表结构n更改表名的方法是在企业管理器中,右击要更名的数据表,在弹出的快捷菜单中选择“重命名”命令,并输入新的表名称。3.3 修改数据表结构n在企业管理器中,打开要修改数据表结构的数据库,右击要进行修改的数据表,从弹出的快捷菜单中选择“设计表”命令。n在此窗口中,可以完成增加、删除和修改字段的操作。3.4 管理数据表中记录n当一个数据表的表结构设计完成后,就可以在数据表中录入数据了。可以使用企业管理器或使用SQL语言中的INSERT语句插入数据。3.4 管理数据表中记录n在企业管理器中,打开指定的数据库,右击要录入数据的数据表,从弹出的快捷菜单中选择“打开表”命令

16、,该命令还有三个子命令。n“返回所有行”:用于显示数据表中的所有记录。n“返回首行”:用于显示前N条记录,N可以自己输入。n“查询”:用于查询具体某条记录。3.5 删除数据表n3.5.1 利用企业管理器删除数据表n在企业管理器中,展开指定的数据库,右击要删除的数据表,从弹出的快捷菜单中选择“删除”命令。3.5.2 使用Transact-SQL语言删除数据表n可以使用Transact-SQL语言中的DROP TABLE语句删除数据表。DROP TABLE语句的语法形式如下:nDROP TABLE table_name ,n3.5.2 使用Transact-SQL语言删除数据表n例3-7 删除BO

17、OKS数据库中的数据表“读者基本信息表”。n可以使用两种方法:n方法一:nUSE BOOKSnGOndrop table 读者基本信息表3.5.2 使用Transact-SQL语言删除数据表n方法二:nUSE MASTERnGOndrop table BOOKS.dbo.读者基本信息表n使用企业管理器或使用drop table语句一次都可以删除一个或多个数据表。3.6 本章小结nSQL Server 2000提供了丰富的数据类型,包括系统数据类型和用户自定义数据类型。SQL Server 2000新增加了三种数据类型:bigint、sql_variant和table。3.6 本章小结n创建用户

18、自定义数据类型可以使用企业管理器或者使用系统存储过程sp_addtype创建。n删除用户自定义数据类型的方法也有两种,分别是使用企业管理器或者使用系统存储过程sp_droptype。删除用户自定义数据类型的前提是数据库内没有任何数据表使用此数据类型。3.6 本章小结n一个完整的数据表主要包括两部分:数据表结构和数据表中的记录。创建一个新的数据表首先要创建数据表的结构,然后再录入表中的数据。只有表结构而没有任何记录的数据表称为空表。3.6 本章小结n创建数据表可以在企业管理器中完成,也可以通过Transact-SQL语言实现。n在使用数据表的过程中,可以根据用户的需要更改数据表的结构。用户可以增加、删除和修改表中的字段,也可以更改数据表的名称。3.6 本章小结n当一个数据表的表结构设计完成后,就可以在数据表中录入数据了。可以使用企业管理器或使用SQL语言中的INSERT语句插入数据。3.6 本章小结n查看数据表中的记录信息的方法是,在企业管理器中打开指定的数据库,右击要查看数据的数据表,从弹出的快捷菜单中选择“打开表”命令中的“返回所有行”子命令。3.6 本章小结n删除数据表的方法也有两种,可以在企业管理器中右击要删除的数据表,在弹出的快捷菜单中选择“删除”命令,确认后就可删除;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论