数据表的创建与

上传人:xue****ang 文档编号:253020356 上传时间:2024-11-27 格式:PPT 页数:19 大小:358.82KB
返回 下载 相关 举报
数据表的创建与_第1页
第1页 / 共19页
数据表的创建与_第2页
第2页 / 共19页
数据表的创建与_第3页
第3页 / 共19页
点击查看更多>>
资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第6章 数据表的创建与管理,1,本章内容,6,.1 数据表的建立,6,.2 数据表的修改,2,6.1 数据表的建立,数据类型,SQL Server支持4种基本数据类型:字符和二进制数据类型、日期时间数据类型、逻辑数据类型、数字数据类型,用于各类数据值的存储、检索和解释。,1.系统数据类型,(1)精确数值类型,精确数值数据类型用于存储有小数点且小数点后位数确定的实数。,格式:,decimal(p,s),numeric(p,s),(2)近似数值类型,用于表示浮点数值数据的近似数值数据类型。,3,6.1 数据表的建立,(3)日期和时间类型,日期时间数据类型用于存储日期和时间数据。SQL Server支持两种日期时间数据类型:datetime和smalldatetime。,(4)字符串类型,字符数据类型用于存储汉字、英文字母、数字符号和其他各种符号。,char数据类型,varchar数据类型,text数据类型,4,6.1 数据表的建立,(5)Unicode字符串类型,SQL Server允许使用多国语言,采用Unicode标准字符集。为此SQL Server提供多字节的字符数据类型:nchar(n)、nvarchar(n)和ntext。,(6)二进制字符串类型,SQL Server二进制数据类型用于存储二进制数或字符串。,SQL Server的3种有效二进制数据类型:,binary数据类型,varbinary(n)数据类型,image数据类型,5,6.1 数据表的建立,(7)其他数据类型,1)cursor。游标是变量或存储过程参数OUTPUT的一种数据类型,这些参数包含对游标的引用。,2)sql_variant:可变数据类型。该类型的变量可用来存放大部分SQL Server数据类型的值,最大长度为8016字节,不支持text、ntext、timestamp和sql_variant类型。,3)table:表类型。这是一种特殊的数据类型,存储供以后处理的结果集。,4)Timestamp:时间戳数据类型,用于自动记录插入或删除操作的时间。,注意:服务器不允许用户指定时间戳值。,5),uniqueidentifier:GUID类型(Global Unique IDentifier,全局惟一标识符)。,2.用户定义数据类型,6,6.1 数据表的建立,使用图形工具创建数据表,使用Transact-SQL语句创建表,语法格式:,CREATE TABLE database_name.schema_name .|schema_name.table_name,(,.n,),7,6.1 数据表的建立,【例6.1续】利用Transact-SQL创建教学数据库中的三张表。,CREATE TABLE student,(SNO CHAR(4)PRIMARY KEY,,SNAME NCHAR(10)NOT NULL,,SEX CHAR(1),,AGE SMALLINT,,CHECK(SEX=F OR SEX=M),,CHECK(AGE BETWEEN 18 AND 25),),CREATE TABLE course,(CNO CHAR(4),,CNAME CHAR(10)NOT NULL,,CREDIT SMALLINT,,PRIMARY KEY(CNO),,CHECK(CREDIT 1 AND 10),),8,6.1 数据表的建立,CREATE TABLE s_c,(SNO CHAR(4),,CNO CHAR(4),,GRADE SMALLINT,,PRIMARY KEY(SNO,CNO),,FOREIGN KEY SNO REFERENCES student(SNO),,FOREIGN KEY CNO REFERENCES course(CNO),,CHECK(GRADE 0 AND 100),),9,6.2 数据表的修改,查看数据表,【例6.2】查看系统当前所有对象的信息。,单击工具栏上【新建查询】按钮,输入以下代码:,USE master,GO,EXEC sp_help,GO,【例6.3】查看教学数据库中学生表的信息。,USE teaching,GO,EXEC sp_help student,GO,10,6.2 数据表的修改,使用图形工具修改数据表,使用Transact-SQL语句修改表,语法格式:,ALTER TABLE database_name.schema_name .|schema_name.table_name,ALTER COLUMN column_name,type_schema_name.type_name (precision ,scale|max ),NULL|NOT NULL,|WITH CHECK|NOCHECK ,|ADD,|,.n,|DROP,CONSTRAINT constraint_name,|COLUMN column_name,.n,;,11,6.2 数据表的修改,【例6.4】为教学数据库中的表student添加一个允许空值的列PLACE,而且没有通过DEFAULT定义提供的值。在该新列中,每一行都将有NULL值。,USE teaching,GO,ALTER TABLE student ADD PLACE VARCHAR(20)NULL,GO,EXEC sp_help student,GO,12,6.2 数据表的修改,【例6.5】修改表student以删除列PLACE。,USE teaching,GO,ALTER TABLE student DROP COLUMN,PLACE,GO,EXEC sp_help student,GO,13,6.2 数据表的修改,【例6.6】将表student中列PLACE的数据类型由VARCHAR(20)更改为VARCHAR(10)。,USE teaching,GO,ALTER TABLE student ALTER COLUMN PLACE VARCHAR(10),GO,EXEC sp_help student,GO,14,6.2 数据表的修改,【例6.7】为表student添加一个包含UNIQUE约束的新列SCARDID。,USE teaching,GO,ALTER TABLE student ADD SCARDID CHAR(18)NULL,CONSTRAINT my_constraint UNIQUE,GO,EXEC sp_help student,GO,15,6.2 数据表的修改,【例6.8】从表student中删除UNIQUE约束。,USE teaching,GO,ALTER TABLE student DROP CONSTRAINT my_constraint,GO,EXEC sp_help student,GO,16,6.2 数据表的修改,使用图形工具删除数据表,使用Transact-SQL语句删除表,语,法,格式如下:,DROP TABLE,database_name.schema_name .|schema_name.,table_name ,.n ;,其中,table_name是要删除的表名。,注意:,(1)定义有外键约束的表必须先删除外键约束,才能删除。,(2)系统表不能使用DROP TABLE语句删除。,17,6.2 数据表的修改,【例6.9】从当前数据库中删除test1表及其数据和索引。,DROP TABLE test1,【例6.10】删除teaching数据库中的test2表。,18,本章小结,(1)表的相关概念:表是数据库中数据的实际存储处所,每个表代表一个实体。表由行和列组成,每行标识实体的一个个体,每列代表实体的一个属性。,(2)数据类型:数据类型描述并约束了列中所能包含的数据的种类、所存储值的长度或大小、数字精度和小数位数(对数值数据类型)。,(3)空值:未对列指定值时,该列将出现空值。空值不同于空字符串或数值零,通常表示未知。空值会对查询命令或统计函数产生影响,应尽量少使用空值。,(4)约束:约束是数据库自动保持数据完整性的机制,它是通过限制列中数据、行中数据和表之间数据来保持数据完整性。SQL Server 2005支持Not Null、Default、Check、Primary Key、Foreign Key、Unique 6种约束。,(5)可以使用,图形工具,和Transact-SQL语句创建表并对表进行维护,包括修改和删除等操作。,19,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!