- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二 SQL数据定义语句练习
实验预习:
创建基本表
1. 在SQL语言中,基本表结构的定义可用CREATE语句实现,其一般格式为:
CREATE TABLE 表名 (列名 数据类型 [列级完整性约束条件]
[ , 列名 数据类型 [列级完整性约束条件] ]….
[ , 表级完整性约束条件] ) ;
上式中所使用的符号是SQL语句中经常见到的,解释如下:
: 表示其中的内容需要用实际内容替代。比如上面格式中,要建立学生表可以将“表名”替换为“student”
[ ] : 表示其中的内容为可选项,即这部分内容可以省略。
2. SQL提供的常用基本数据类型:
数据类型 说明 CHAR(N) 长度为n的定长字符串 INTEGER 全字长整数 SMALLINT 半字长整数 REAL 浮点数 DOUBLE RECISION 双精度浮点数 DATE 日期。如YYYY-MM-DD(年-月-日) TIME 时间。如HH:MM:SS(时:分:秒) 3. 修改基本表
在SQL语言中,修改基本表结构的操作可用ALTER语句实现,其一般格式为:
ALTER TABLE 《表名》
[ ADD 新列名 数据类型 [ 完整行约束 ] ]
[ DROP 完整性约束 ]
[ MODIFY 列名 数据类型]
对于上面的ALTER TABLE 语句:
表名 是要修改的基本表的名称。
ADD 子句用于增加新列和新的完整行约束条件。应注意,新列不能定义为NOT NULL,基本表在增加一列后,原有元组在新增加的列上的值都取空值。
DROP 子句用于删除指定的完整新约束条件。
MODIFY 子句用于修改原有的列名和数据类型。
如果要删除基本表中的某列,则去语法如下:
ALTER TABLE 表名 DROP 列名 [CASCADE| RESTRICT];
其中[CASCADE| RESTRICT] 为列的删除方式,可以选CASCADE和RESTRICT中的任意一种。CASCADE方式表示在基本表中删除列时,所有引用该列的视图或完整性约束均一起自动删除;RESTRICT方式表示只有当没有视图或完整性约束时该列才能被删除,否则拒绝删除操作。
4. PRIMARY KEY (主键)
FOREIGN KEY (外键)REFERENCES ()说明外键必须来自哪里。
Unique (取值唯一)
NULL (空) , NOT NULL UNIQUE 表示取值唯一,不能去空值。
实验内容:
建立一个供应商、零件数据库。其中“供应商”表S(Sno , Sname , City),其中3个列名分别表示供应商代号、供应商名、供应商所在城市。“零件”表P(Pno , Pname , Color , City),其中4个列名分别表示零件号、零件名、颜色、产地。其中数据库要满足如下要求:
(其中各属性数据类型可以按下面的设置,SNO CHAR(5),SNAME CHAR(10), CITY CHAR(20),PNO CHAR(6),PNAME CHAR(30),COLOR CHAR(8) ,但是注意一点,相同属性字段在不同关系中,属性类型应该设置也相同)
供应商代号不能为空,且值是唯一的,供应商的名也是唯一的。
零件号不能为空,且值是唯一的。零件名不能为空。
由于一个供应商可以供应多个零件,一个零件可以由多个供应商供应。供应商与零件是多对多的关系,所以需要建立一个联系SP,关系模式为SP(Sno , Pno , Qty ),其中,Qty 表示零件的数量。
向“供应商”表S增加“邮政编码”列。
S表格
Create table s
(sno char (5) not null unique ,
Sname char (10) unique ,
City char(20),
Primary key (sno ));
P表格
Create table p
(pno char (6) not null unique ,
Pname char (30) unique ,
Color char(8),
City char(20),
Primary key (pno ));
Sp表格
create table sp
(sno char (5) not null,
pno char (6) not null,
Qty char (5),
Primary key (sno , pno),
Foreign key (sno) references s(sno ),
Foreign key (pno) references p(pno));
添加语句
Alter t
文档评论(0)