SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件

上传人:E**** 文档编号:91252266 上传时间:2019-06-26 格式:PPT 页数:22 大小:54.50KB
返回 下载 相关 举报
SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件_第1页
第1页 / 共22页
SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件_第2页
第2页 / 共22页
SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件_第3页
第3页 / 共22页
SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件_第4页
第4页 / 共22页
SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件》由会员分享,可在线阅读,更多相关《SQLServer2008数据库及应用教学课件作者第4版徐人凤电子课件单元6创建与管理表课件(22页珍藏版)》请在金锄头文库上搜索。

1、单元 6 创建与管理数据表,深圳职业技术学院 大型数据库课程组,大型数据库,学习目标,【知识目标】 理解数据库表和空值。 掌握设计、创建和管理数据表的方法。 熟练掌握显示数据表结构的方法。 了解临时表和表变量的使用方法。 【技能目标】 会设计、创建和管理(修改、重命名、删除)数据表。 会显示数据表结构。 会使用临时表和表变量。,任务陈述,学生选课数据库成功创建之后,现在需要在学生选课数据库Xk中创建学生表、课程表、学生选课表、系部表、班级表。即按照表4-6、表4-7、表4-8、表4-9、表4-10和表4-11的要求建立五个表的表结构。,数据表,表(TABLE):用于存储数据的数据库对象。表中的

2、数据以行和列方式组织,表中不允许出现值完全相同的数据行。 同一个数据库中表名须惟一,每个表中的列名须唯一,不同表内的列名可以相同。 SQL Server允许每个数据库最多有2,000,000个表。SQL Server中的每个表中允许有1024个列,每一行最多允许有8060个字节。,任务61 详细设计数据表,创建表之前须要先设计表,需要考虑: (1)表名; (2)列名、列值的数据类型和最大可存储的长度,列值是否允许为空(NULL)值; (3)保证列数据完整性的措施; (4)保证表数据完整性的措施; (5)保证参照完整性的措施; (6)如果将表不存在PRIMARY主文件组上,还要先创建文件组。 (

3、7)按照哪些列查询数据。,任务61 详细设计数据表,对学生表、课程表、学生选课表、系部表、班级表的详细设计结果,请见教材127-128页。 空值(NULL)值:意味着没有输入,通常表明值是未知的或未定义的。它不等于零(0)、空格或零长度字符串。 【建议】空值会导致查询和更新时使事情变得更复杂,所以为了减少SQL语句的复杂性,建议尽量不要允许使用空值。可采用默认约束或默认值方法。,任务62 创建数据表,创建数据表,方法: 1、使用SQL Server Management Studio 2、使用CREATE TABLE 将表建在默认的PRIMARY主文件组上 。 【演示】【问题61】使用SQL

4、Server Management Studio创建表6-1的Department表。 【练一练】【问题62】使用SQL Server Management Studio创建表6-2的Course表。 【演示】【问题63】使用CREATE TABLE语句创建表6-3的Class表。,任务62 创建数据表,【练一练】【问题63】使用CREATE TABLE语句创建表6-4的Student表、表6-5的StuCou表。 【注意】int、smallint的后面无需写精度和小数位数,任务63 显示表结构,使用系统存储过程SP_HELP,查看Class表结构。 USE Xk GO EXEC SP_HEL

5、P Class GO,任务64 修改数据表结构,对已创建的表,可以: 新增列 删除列 修改列的定义 重命名列 重命名表 删除表 新增列 【问题64】给Student表新增2列:生日列birthday,日期型,允许为空;备注列bz,nvarchar,长度为20,允许为空。,任务64 修改数据表结构,-增加列 ALTER TABLE Class ADD TempCl char(8) NULL -修改列 ALTER TABLE Class ALTER COLUMN TempCl char(10) NULL -删除列 ALTER TABLE Class DROP COLUMN TempCl -重命名列

6、 SP_RENAME 表名.原列名, 新列名, COLUMN -重命名表 SP_RENAME 原表名, 新表名, -删除表 DROP TABLE 表名,任务64 修改数据表结构,USE Xk GO ALTER TABLE Student ADD birthday datetime null,bz nvarchar(20) null GO 删除列: 【问题65】删除Student表的生日列Birthday。 修改列定义: 【问题66】修改Student表的备注列bz,将列定义的长度修改为30。,重命名列 【问题67】将Student表的备注列bz名字修改为StuBz。 重命名表 【问题68】使用

7、SQL Server Management Studio将Xk数据库的Department表重命名为Depart。 【问题69】使用Transcact-SQL语句将表Depart重命名为Department。,任务65 删除数据表,删除数据表:表结构和表中的所有数据都被删除。 注意:删除数据表时SQL Server并不提示删除进行确认,所以要谨慎删除,建议删除前要先备份。 【问题610】使用SQL Server Management Studio删除Xk数据库中的表Department。 【问题611】使用Transcact-SQL语句删除Xk数据库中的表Department。,临时表,何时使

8、用临时表?当需要在临时表上显式地创建索引时,或多个存储过程或函数需要使用表值时。 临时表存储在哪里?存储在临时数据库tempdb中,当不再使用时系统会自动删除临时表。 临时表有几种类型?本地临时表,以“#”开始 ,在退出其作用域时将由系统自动删除。全局临时表,以“#”开始 ,SQL Server在所有使用该全局临时表的用户断开连接后删除该表 。,临时表,【问题612】几种常用的临时表的使用方法。 (1)先定义临时表,再使用。 USE Xk GO -在Xk中创建临时表#t1 CREATE TABLE #t1 (CouNo nvarchar(3), CouName nvarchar(30) ) -

9、向临时表输入数据的一种方式 INSERT INTO #t1 VALUES (000,临时课程) -向临时表输入数据的另外一种方式 INSERT #t1 SELECT CouNo,CouName FROM Course GO,临时表,(2)直接将结果集的数据保存到至临时表#t2中。 USE Xk GO -直接将结果集的数据存到临时表#t2 SELECT CouNo,CouName INTO #t2 FROM Course GO,表变量,表变量:特殊的数据类型,它用于存储结果集以供后续处理。这些行将作为表值函数的结果集返回。 表变量的行为类似于局部变量,有明确定义的作用域。,表变量,表变量具有如下

10、特点: (1)在存储过程中使用表变量与使用临时表相比,减少了存储过程的重新编译量。 (2)涉及表变量的事务只在表变量更新期间存在,这样就减少了表变量对锁定和记录资源的需求。 (3)在其作用域内,表变量可像常规表那样使用。该变量可应用于SELECT、INSERT、UPDATE和DELETE语句中用到表或表的表达式的地方。 (4)不支持在表变量之间进行赋值操作。 (5)由于表变量作用域有限,而且不是永久数据库的一部分,因此不受事务回滚的影响。,表变量,【问题613】表变量的使用方法。 USE Xk GO -定义表变量t DECLARE t TABLE (CouNo nvarchar(3),CouName nvarchar(30) -向表变量输入数据的一种方式 INSERT INTO t VALUES (000,临时课程) -向表变量输入数据的另外一种方式 INSERT t SELECT CouNo,CouName FROM Course GO,单元小结,在本单元,应学会: 详细设计表 了解空值。尽量不要允许列值为空。 创建表 显示表结构 修改表 重命名列或重命名表 删除表(含表结构和所有数据) 了解临时表和表变量及使用。,复习与巩固,本单元138页。 思考与练习 实训,后缀为.sql的文件。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号