实验二 数据定义实验报告.docx
- 文档编号:4416852
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:14
- 大小:575.31KB
实验二 数据定义实验报告.docx
《实验二 数据定义实验报告.docx》由会员分享,可在线阅读,更多相关《实验二 数据定义实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
实验二数据定义实验报告
实验二数据定义
一、实验目的
1、掌握使用SQL语句创建和删除数据库;
2、掌握使用SQL语句创建和删除数据表,创建各种完整性约束,修改表的结构;
3、掌握索引的创建和删除方法。
二、预备知识
1、数据库的建立与删除
可以使用SQL语句建立数据库,语句格式为:
CREATEDATABASE<数据库名>
其中CREATEDATABASE为关键字,<数据库名>为用户创建的数据库的名称,由用户自定。
使用DROPDATABASE语句可以删除数据库,语句格式为:
DROPDATABASE<数据库名>
其中DROPDATABASE为关键字,<数据库名>为要删除的数据库的名称。
当数据库被删除时,数据库中的所有数据对象也一起被删除掉。
2、数据表的创建与删除
使用CreateTable语句创建数据表,语句格式为:
CREATETABLE<表名>(<列名><数据类型>[列级完整性约束条件]
[,<列名><数据类型>[列级完整性约束条件]]
…
[,<表级完整性约束条件>]);
其中CREATETABLE为关键字,<表名>为数据表的名称,由用户确定,<列名>为组成这个表的属性列的名称,由用户确定,<数据类型>为属性列的取值的类型,由用户在具体的DBMS所提供的数据类型中选择。
使用DropTable语句删除数据表,语句格式为:
DROPTABLE<表名>
注意:
删除一个表,表的定义以及表中的所有数据,以及该表的索引、约束、触发器等将自动删除,并且与表相关联的规则和默认对象也将失去与它的关联关系。
3、修改基本表
使用ALTERTABLE语句修改已建立好的基本表,该语句可以实现添加、修改、删除基本表中的属性列、约束等操作,下面分别给出语句格式及说明:
(1)添加操作
在ALTERTABLE语句中使用ADD子句添加新列和新的完整性约束,添加新列的语句格式如下:
ALTERTABLE<表名>ADD<新列名><数据类型>
添加新的完整性约束语句格式如下:
ALTERTABLE<表名>ADD<完整性约束规则>
(2)修改操作
在ALTERTABLE语句中使用ALTERCOLUMN子句修改原有列的定义,语句格式如下:
ALTERTABLE<表名>ALTERCOLUMN<列名><数据类型>
(3)删除操作
在ALTERTABLE语句中使用DROP子句删除已有的列和完整性约束条件,删除列的语句格式如下:
ALTERTABLE<表名>DROPCOLUMN<列名>
删除完整性约束条件的语句格式为:
ALTERTABLE<表名>DROP<约束名称>
关于ALTERTABLE语句更详细的语法格式请参照“联机丛书”,下面通过实例给出ALTERTABLE语句的具体用法,如下:
操作
类型
实例
添加
添加新列
AltertablesaddSidchar(20)
添加新的完整性约束
Altertablesaddunique(sid)
修改
修改原有列的定义
AltertablesaltercolumnSidchar(30)
删除
删除已有完整性约束
Altertablesdropuq_sid
删除已有列
AltertablesdropcolumnSid
4、索引的创建与删除
使用CREATEINDEX语句创建索引,语句格式为:
CREATE[UNIQUE][CLUSTERED|NONCLUSTERED]INDEX<索引名称>
ON<表名>(列名[ASC|DESC][,...n])
其中UNIQUE、CLUSTERED、NONCLUSTERED指出所建索引的类型,分别为唯一性索引、聚集索引和非聚集索引。
注意:
不能在数据类型为text、ntext和image的列上建立索引。
使用DROPINDEX语句删除索引,语句格式为:
DROPINDEX<表名.索引名>
注意:
DropIndex语句能够删除CreateIndex语句所建立的索引,但是它不能删除SQLSever为PrimaryKey或Unique约束所建立的索引,这些索引只能通过删除约束或表的方法来删除。
三、实验内容
(一)数据库的建立
使用CREATEDATABASE语句创建名为“gongcheng”的数据库。
(二)数据表操作
1.建立数据表
在创建的“gongcheng”数据库中使用SQL语句建立4个关系(可参考课本P74习题5),如下:
供应商表S(Sno,Sname,Status,Ctiy)
零件表P(Pno,Pname,Color,Weight)
工程项目表J(Jno,Jname,City)
供应情况表SPJ(Sno,Pno,Jno,QTY)
要求:
(1)创建每个关系的主键,有外键的创建外键。
(2)S表中的Sname属性列的取值唯一
(3)P表中weight属性列的取值范围在1-50之间
S、P、J、SPJ表的创建分别如下图所示:
(4)J表中的Jname取值不能为空并且是唯一的
(5)SPJ表中QTY属性列的数据类型必须为int
2.修改表的结构
用SQL语句完成以下操作:
(1)给S表增加Sphone和Semail两个属性列,分别用来存放供应商的联系电话和电子信箱。
(2)删除Jname属性列取值唯一的约束。
(3)将QTY属性列的数据类型修改为Smallint型。
(4)删除S表中的属性列Semail
3.创建、删除索引
通过SQL语句分别在表S、P、J表中的Sno,Pno,Jno属性列上建立唯一索引(升序)
4.数据录入操作
在EXCEl中录入四个表的数据(具体数据可参照课本P75四个表中的数据),用数据导入功能将EXCEL中的数据分别导入到S,P,J和SPJ表中。
在gongcheng上右击鼠标,选择任务中的导入数据
服务器名称为你所在计算机的属性名。
选择对应的数据表如下图所示:
如下图,单击完成即可导入数据:
导入的数据户如下图所示:
5.备份gongcheng数据库。
把鼠标移至gongcheng,单击鼠标右键,选择任务中的备份,选择你所要备份的路径,点击确定即可完成。
6、编写代码如下:
createdatabasegongcheng;/*建立数据库*/
createtableS
(Snovarchar(10)primarykey,
Snamevarchar(10)unique,
Statusvarchar(10),
Cityvarchar(10))/*建立S表*/
createtableP
(Pnovarchar(10)primarykey,
Pnamevarchar(10),
Colorvarchar(10),
Weightvarchar(10)check(Weight>1andWeight<50))/*建立P表*/
createtableJ
(Jnovarchar(10)primarykey,
Jnamevarchar(10)notnullunique,
Cityvarchar(10))/*建立J表*/
createtableSPJ
(Snovarchar(10),
Pnovarchar(10),
Jnovarchar(10),
QTYint,
primarykey(Sno,Pno,Jno),
Foreignkey(Sno)referencesS(Sno),
Foreignkey(Pno)referencesP(Pno),
Foreignkey(Jno)referencesJ(Jno))/*建立SPJ表*/
altertableSaddSphonevarchar(10);
/*向S表中添加Sphone用来记录电话*/
altertableSaddSemailvarchar(10);
/*向S表中添加Semail用来记录电子邮件*/
altertableJdropUQ__J__5A1986B61920BF5C;
/*删除Jname属性列取值唯一的约束*/
altertableSPJaltercolumnQTYsmallint;
/*将QTY属性列的数据类型修改为Smallint型*/
altertableSdropcolumnSemail;
/*删除S表中的属性列Semail*/
/*分别在表S、P、J表中的Sno,Pno,Jno属性列上建立唯一索引*/
createuniqueindexSnonS(Snoasc)
createuniqueindexPnonP(Pnoasc)
createuniqueindexJnonJ(Jnoasc)
(三)试验总结:
通过本次试验,掌握了使用SQL语言来建立数据库、建立表、以及学习其他相关的操作,如删除属性列、添加属性列、修改属性列、建立索引、删除索引等等。
本次实验遇到的问题有:
(1)对相关操作不是很熟悉,已开启SQLserver就遇到麻烦,关键是使用太少。
(2)删除属性的取值的唯一约束不会,正确代码应为:
altertableJdropUQ__J__5A1986B61920BF5C,其中UQ__J__5A1986B61920BF5C是此属性的键值。
通过查询资料和询问同学,我解决了这个问题
(3)对建立索引操作不熟悉,通过再次学习才掌握
(4)不会数据导入,通过上网查询资料以及实践操作顺利解决了此问题。
(5)数据恢复后不知道如何寻找之前写入的代码。
还未解决!
通过此次实习,我对SQLserver有了更深的认识,以及对SQL语言产生一定兴趣!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验二 数据定义实验报告 实验 数据 定义 报告