《用SQL命令创建数据表43345.pptx》由会员分享,可在线阅读,更多相关《用SQL命令创建数据表43345.pptx(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、复习题 建立一个宾馆数据库。具体文件属性如下表:参数参数值数据库名bg逻辑数据文件名Bg_dat操作系统数据文件名D:databg_dat.mdf数据文件的初始大小5MB数据文件的最大大小20MB数据文件增长帐度2MB日志逻辑文件名Bg_log操作系统日志文件名D:databg_log.ldf日志文件初始大小1MB日志文件增长幅度15%总结:n直观判断自己写的命令是否对:1、SQL语法格式语法格式蓝色;蓝色;如:creat(错)database studentDB2、如数据库名字之类、如数据库名字之类黑色;黑色;3、单引号内、单引号内红色红色如:NAME=Nlx_data,FILENAME=N
2、E:2010上半年周datalx_data.mdf总结n实验中表现最好的同学:实验中表现最好的同学:n董洪方在C盘无法创建:原因:配置工具SQL Server Configuration Managersqlserver服务:网络服务改为本地系统。n索非亚也发现了E盘无法创建,也解决了。n左书涵在C盘创建文件夹,得到解决n。n说明具备学习能力:大家利用网络学会学习了创建数据表主要内容主要内容:n n创建数据表创建数据表(掌握掌握)n n维护数据表维护数据表n n操作数据表操作数据表(掌握掌握)n n小结小结创建数据表n创建数据表实例(演示)n数据表的特点(了解)表的结构 n一个关系对应一张二维
3、表n表由行和列组成,行有时也称为记录,列有时也称为字段或域,学号姓名性别出生时间专业总学分照片备注95001张三男90/02/09计算机600表的特点基本关系(表)具有以下六条性质:1,列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。2,不同的列可以出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名。3,列的顺序无所谓,即列的次序可以任意交换。4,任意两个元组不能完全相同。5,行的顺序无所谓,即行的次序可以任意交换。6,分量必须取原子值,即每一个分量都必须是不可分的数据项。数据表的创建n 在图形界面下创建数据表在图形界面下创建数据表(演示演示)需要的知识点需要的知
4、识点:第第8章章 TSQL语言语言 P103n 用用SQL命令创建数据表命令创建数据表用SQL命令创建数据表基本语法如下:基本语法如下:CREATE TABLE 表名表名(列名列名1 数据类型和长度数据类型和长度1 列属性列属性1,列名列名2 数据类型和长度数据类型和长度2 列属性列属性2,列名列名n 数据类型和长度数据类型和长度n 列属性列属性n)在CREATE TABLE语句中需要指出的元素与在表设计器中相同,包括表名、列名、列的数据类型以及列属性等。USE 学生选课学生选课GOCREATE TABLE Student(SnointNOT NULL PRIMARY KEY,Snamevar
5、char(20)NOT NULL,Ssexchar(2),Sagesmallint,Sdeptvarchar(20)用SQL命令创建数据表练习:n练习:课本P72 第3题 表5-2 数据表的修改n查看表属性查看表属性n修改表结构修改表结构n删除数据表删除数据表查看表属性n在SQL Server Management Studio中,选中要查看的数据表,单击鼠标右键,选择“属性”,将打开“表属性”对话框,如图所示。n还可以通过sp_help存储过程存储过程来查看表结构信息。如图所示。修改表结构n1、在图形方式下修改表结构n 在SQL Server Management Studio中,选中要查看
6、的数据表,单击右键,在弹出菜单中选择“修改”,打开表设计器即可修改表结构。n2、使用ALTER TABLE语句修改表结构 n 添加列n 修改列属性n 删除列 n 修改列名和表名添加列 n n基本语法基本语法基本语法基本语法:ALTER TABLE ALTER TABLE 表名表名表名表名 ADD ADD 列名列名列名列名 数据类型和长度数据类型和长度数据类型和长度数据类型和长度 列属性列属性列属性列属性在表课程中新增一列“入学年月”,列名为Sentrance,数据类型为datetime,允许空值。执行以下语句:ALTER TABLE Student ADD Sentrance datetime
7、ALTER TABLE Student add Sentrance datetime default(2008-01-01)n n注意注意注意注意:n当向表中新增一列时,最好为该列定义一个默认约束,使该列有一个默认值。这一点可以使用关键字关键字DEFAULT来实现;n如果增加的新列没有设置默认值,并且表中已经有了其他数据,那么必须指定该列允许空值指定该列允许空值,否则,系统将产生错误信息。修改列属性n n基本语法:基本语法:基本语法:基本语法:ALTER TABLE ALTER TABLE 表名表名表名表名 ALTER COLUMN ALTER COLUMN 列名列名列名列名 新数据类型和长度
8、新数据类型和长度新数据类型和长度新数据类型和长度 新列属性新列属性新列属性新列属性n例如,创建的Sentrance列是datetime类型,并且不允许为空。现在要将该列改为smalldatetime类型,并且允许为空。SQL语句如下:ALTER TABLEALTER TABLE Student Student ALTER COLUMNALTER COLUMN SentranceSentrance smalldatetimesmalldatetime NULL NULL 删除列n n基本语法:基本语法:ALTER TABLE ALTER TABLE 表名表名表名表名 DROP COLUMN DR
9、OP COLUMN 列名列名列名列名n例如,要删除Student表中的Sentrance列,可以执行下面的SQL语句。ALTER TABLE Student DROP COLUMN Sentrance修改列名和表名n可以使用sp_rename存储过程对表和表中的列进行重命名,重命名的基本语法为:sp_rename sp_rename 原对象名原对象名原对象名原对象名,新对象名新对象名新对象名新对象名n例如,如果想将Student表改名为StudentInfo,可以执行以下SQL语句:sp_rename Student,StudentInfo删除数据表n删除表就是将表中的数据和表的结构表中的数据
10、和表的结构表中的数据和表的结构表中的数据和表的结构从数据库中永久性的移除永久性的移除永久性的移除永久性的移除。也就是说,表一旦被删除,就无法恢复,除非还原数据库。因此,执行此操作时应该慎重。n在SQL Server Management Studio中,选中要查看的数据表,单击右键,在弹出菜单中选择“删除”,将弹出“删除对象”对话框,单击“确定”按钮,选中的表就从数据库中被删除了。n也可以使用DROP TABLEDROP TABLE语句语句语句语句来完成数据表的删除。nDROP TABLE语句的语法:DROP TABLE DROP TABLE 表名表名表名表名n例如:删除“学生选课”数据库中的
11、exam表。USE USE 学生选课学生选课学生选课学生选课GOGODROP TABLE examDROP TABLE examn在使用DROP TABLE语句删除数据表时,需要注意以下几点:nDROP TABLE语句不能删除系统表不能删除系统表不能删除系统表不能删除系统表;nDROP TABLE语句不能删除正被其他表中的外键约束参考外键约束参考外键约束参考外键约束参考的表。当需要删除这种有外键约束参考的表时,必须先删除外键约束,然后才能删除该表;n当删除表时,属于该表的约束和触发器也会自动被删除约束和触发器也会自动被删除约束和触发器也会自动被删除约束和触发器也会自动被删除。如果重新创建该表,
12、必须重新创建相应的规则、约束和触发器等;nDROP TABLE语句可以一次性删除多个表一次性删除多个表一次性删除多个表一次性删除多个表,表之间用逗号分开。添加和修改表数据n手工添加表数据手工添加表数据n查看表记录查看表记录n用用INSERT语句插入数据语句插入数据n用用UPDATE语句更新数据语句更新数据n用用DELETE语句删除数据语句删除数据 手工添加表数据n在SQL Server Management Studio中,选中要查看的数据表,单击右键,在弹出菜单中选择“打开表”,可以打开查询表数据的窗口,该窗口显示了表中已经存储的数据,数据列表的最后有一个空行。如图 所示。n插入数据时,将光
13、标定位在空白行某个字段的编辑框中,就可以输入新数据。编辑完成后,选中其他行,即可完成数据的插入。查看表记录n在SQL Server Management Studio中,选中要查看的数据表,单击右键,在弹出菜单中选择“打开表”,可以打开查询表数据的窗口,就可以查看该表中现已存储的数据。n另外,用户还还可在查询窗口中使用SELECT命令查看一个或多个表中的数据。用INSERT语句插入数据nINSERT语句的基本语法:INSERT INTO 表名表名 (列名列名1,列名列名2,列名列名n)VALUES (值值1,值值2,值值n)nINSERT子句子句指定要插入的数据表名,并且可以同时指定表的列名称
14、。nVALUES子句子句指定要插入的数据。n例:USE 学生选课学生选课GO INSERT INTO Student(Sname,Ssex,Sage,Sdep)VALUES(曾玉林曾玉林,男男,20,CS)n n使用使用INSERTINSERT插入数据时注意几点插入数据时注意几点:n要插入的数据表必须已经存在。n要插入数据的表结构必须和SELECT语句的结果集兼容,也就是说,二者的列的数量和顺序必须相同、列的数据类型必须兼容等。n当完全按照表中列的存储顺序来安排VALUES子句中的值时,可以在INSERT INTO子句中省略列名。n向表中插入数据时,数字数据可以直接插入,但是字符数据和日期数据
15、要用英文单引号引起来,不然就会提示系统错误。n一般情况下,使用INSERT语句一次只能插入一行数据。但是如果在INSERT语句中包含了SELECT语句,就可以一次插入多行数据了。n使用SELECT语句插入数据的基本语法形式为:INSERT INTO INSERT INTO 表名表名表名表名 (列名(列名(列名(列名1,1,列名列名列名列名2,2,列名列名列名列名n n)SELECTSELECT语句语句语句语句 n可以使用UPDATE语句更新表中已经存在的数据,该语句既可以一次更新一行数据,也可以一次更新多行数据,甚至可以一次更新表中的全部数据行。nUPDATE语句基本语法:UPDATE UPD
16、ATE 表名表名表名表名SET SET 列名列名列名列名1 1值值值值1,1,列名列名列名列名2 2值值值值2,2,列名列名列名列名n n值值值值n nWHERE WHERE 更新条件表达式更新条件表达式更新条件表达式更新条件表达式n当执行UPDATE语句时,如果使用了WHERE子句,则指定表中所有满足WHERE子句条件的行都将被更新,如果没有指定WHERE子句,则表中所有的行都将被更新。用UPDATE语句更新数据 例如:将学生表Student中“刘尘”所属的学院由CS改为SS。USE USE 学生选课学生选课学生选课学生选课GOGOUPDATE Student SET Sdep=SSUPDA
17、TE Student SET Sdep=SSWHERE Sname=WHERE Sname=刘尘刘尘刘尘刘尘 执行结果如图1所示,有一行记录被更新。图1 更新数据表数据更新数据时,每个列既可以被直接赋值,例如上例子也可以通过计算得到新值。例如:将所有学生的年龄增加1岁。USE 学生选课学生选课GOUPDATE Student SET Sage=Sage+1 用DELETE语句删除数据 n当表中的数据不再需要的时候,可以将其删除。一般情况下,可以使用DELETEDELETE语句语句语句语句删除表中的数据。该语句可以从一个表中删除一行或多行数据。n使用DELETE语句删除数据的基本语法形式如下:D
18、ELETE FROM DELETE FROM 表名表名表名表名WHERE WHERE 条件表达式条件表达式条件表达式条件表达式n在DELETE语句中,如果使用了WHERE子句,表示从指定的表中删除满足WHERE子句条件的数据行。如果没有使用WHERE子句,则表示删除指定表中的全部数据。例如:删除Exam表中姓名为“刘尘”的数据记录。USE 学生选课学生选课GODELETE FROM ExamWHERE Ename=刘尘刘尘 如果想删除如果想删除ExamExam表中的所有数据,直接执行:表中的所有数据,直接执行:DELETE FROM DELETE FROM DELETE FROM DELETE
19、 FROM ExamExamExamExam或者或者DELETE ExamDELETE ExamDELETE ExamDELETE Exam就可以了。就可以了。注意:注意:注意:注意:在删除数据时,DELETE语句只是删除表中存储的数据,表结构依然存在于数据库中表结构依然存在于数据库中表结构依然存在于数据库中表结构依然存在于数据库中。如果需要删除表结构,应该使用前面介绍的DROP TABLEDROP TABLE语句。本章小结n表是数据库中最核心、最重要的一个内容,它负责存储数据库中的数据。n主要讲解了如何在图形方式下和SQL命令方式下进行表的创表的创建、修改、删除操作建、修改、删除操作,以及表中数据的添加、更新和删除操以及表中数据的添加、更新和删除操作。作。n创建、更改、删除表的SQL命令分别为:CREATE TABLE、ALTER TABLE、DROP TABLE。n本章涉及到的SQL命令,需要读者在学习过程中多上机进行多上机进行练习练习,做到熟练使用并掌握做到熟练使用并掌握。本章结束!本章结束!谢谢大家!谢谢大家!
限制150内