数据库上机实验报告
试验内容
1、数据表的建立
基本表《简单的》带有主键
带有外码约束的(外码来自其他表或者本表)
2、数据表的修改
添加删除列
修改列属性类型
添加删除约束(约束名)
元组的添加,修改,删除
删除数据表
试验过程
1、createtablestudent
(
snochar(9)primarykey,
snamechar(20)unique,
ssexchar(2),
sagesmallint,
sdeptchar(20)
);
createtablecourse
(
cnochar(4)primarykey,
cnamechar(40),
cpnochar(4),
ccreditsmallint,
foreignkey(cpno)referencescourse(cno)
);
createtablesc
(
snochar(9),
cnochar(4),
gradesmallint,
primarykey(sno,cno),
foreignkey(sno)referencesstudent(sno),
foreignkey(cno)referencescourse(cno),
);
例1、createtables
(
cnovarchar(3),
snamevarchar(20),
statusint,
cityvarchar(20),
constraintpk_snoprimarykey(sno),
);
createtablep
(
pnovarchar(3),
pnamevarchar(20),
colorvarchar(3),
weightint,
constraintpk_pnoprimarykey(pno),
);
createtablej
(
jnovarchar(3),
jnamevarchar(20),
cityvarchar(20),
constraintpk_jnoprimarykey(jno)
);
例2、createtablespj
(
snovarchar(3),
pnovarchar(3),
jnovarchar(3),
qtyint,
constraintpk_spjprimarykey(sno,pno,jno),
foreignkey(sno)referencess(sno),
foreignkey(pno)referencesp(pno),
foreignkey(jno)referencesj(jno),
);
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,’天津’)
试验中的问题的排除与总结:
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,
snamechar(10)unique,
ssexchar(2),
sagesmallint,
sdeptchar(20)
);
-----------