数据库上机实验报告

来源:飞鸿范文帮 2.03W

数据库上机实验报告

数据库上机实验报告

试验内容

1、数据表的建立

基本表《简单的》带有主键

带有外码约束的(外码来自其他表或者本表)

2、数据表的修改

添加删除列

修改列属性类型

添加删除约束(约束名)

元组的添加,修改,删除

删除数据表

试验过程

1、createtablestudent

(

snochar(9)primarykey,/*sno是主码列级完整性约束条件*/

snamechar(20)unique,/*sname取唯一值*/

ssexchar(2),

sagesmallint,/*类型为smallint*/

sdeptchar(20)/*所在系*/

);

createtablecourse

(

cnochar(4)primarykey,/*列级完整性约束条件,cno是主码*/

cnamechar(40),

cpnochar(4),/*cpno的含义是先行课*/

ccreditsmallint,

foreignkey(cpno)referencescourse(cno)

/*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是cno*/

);

createtablesc

(

snochar(9),

cnochar(4),

gradesmallint,

primarykey(sno,cno),

/*主码有两个属性构成,必须作为表级完整性进行定义*/

foreignkey(sno)referencesstudent(sno),

/*表级完整性约束条件,sno是外码,被参照表是student*/

foreignkey(cno)referencescourse(cno),

/*表级完整性约束条件,cno是外码,被参照表示course*/

);

例1、createtables

(

cnovarchar(3),/*变长的字符串,输入2个字符就是两个字符不会补空格*/

snamevarchar(20),

statusint,

cityvarchar(20),

constraintpk_snoprimarykey(sno),/*约束条件的名字为pk_sno*/

);

createtablep

(

pnovarchar(3),

pnamevarchar(20),

colorvarchar(3),

weightint,

constraintpk_pnoprimarykey(pno),/*约束条件的名字是pk_pno*/

);

createtablej

(

jnovarchar(3),

jnamevarchar(20),

cityvarchar(20),

constraintpk_jnoprimarykey(jno)/*约束条件的名字为pk_jno*/

);

例2、createtablespj

(

snovarchar(3),/*第一个表中的主码*/

pnovarchar(3),

jnovarchar(3),

qtyint,/*数量*/

constraintpk_spjprimarykey(sno,pno,jno),/*主码由3个属性组成*/

foreignkey(sno)referencess(sno),

/*表级完整性约束条件,sno是外码,被参照表是s*/

foreignkey(pno)referencesp(pno),

/*表级完整性约束条件,pno是外码,被参照表是p*/

foreignkey(jno)referencesj(jno),

/*表级完整性约束条件,jno是外码,被参照表是j*/

);

2、数据表的更改

在s表中添加一个concat列

altertablesaddconcatvarchar(20)

在s表中删除concat列

altertablesdropcolumnconcat

更改s表concat列的属性把长度由20改为30

altertablesaltercolumnconcatvarchar(30)

联系方式名字为concat修改属性为唯一的属性名为con_concat

altertablesaddconstraintcon_concatunique(concat)

删除约束关系con_concat

altertablesdropconstraintcon_concat

/*插入一个元组*/

insertintosvalus(‘s1’,’精益’,20,’天津’)/*20不能写成’20’*/

试验中的问题的排除与总结:

1、在创建spj时

有三个实体所以从3个实体中取主码,还有一个数量属性也要写上

主码由那3个主码确定

2、更改一个数据库中数据表时一定要先使该数据库处于正在使用状态

3、constraint

是可选关键字,表示primarykey、notnull、unique、foreignkey或check约束定义的开始。约束是特殊属性,用于强制数据完整性并可以为表及其列创建索引。

4、--go可以不加但是要注意顺序注:go--注释提示错误

5、注意添加一个空元素用null

附sql备份

--创建一个数据库student

createdatabasestudent

go

--在数据库student中创建表studentcoursesc注意顺序

usestudent

----------------------------------------------------------------

createtablestudent

(

snochar(9)primarykey,/*sno是主码列级完整性约束条件*/

snamechar(10)unique,/*sname取唯一值*/

ssexchar(2),

sagesmallint,/*类型为smallint*/

sdeptchar(20)/*所在系*/

);/*;要加*/

-----------

热门标签