资源描述
数据库上机实验报告sql数据库实验报告数据库上机实验报告试验内容1、 数据表的建立基本表简单的带有主键带有外码约束的(外码来自其他表或者本表)2、 数据表的修改添加删除列修改列属性类型添加删除约束(约束名)元组的添加,修改,删除删除数据表试验过程1、create table student(sno char(9) primary key , /*sno是主码 列级完整性约束条件*/sname char(20) unique, /*sname取唯一值*/ssex char(2),sage smallint, /*类型为smallint*/sdept char(20) /*所在系*/);create table course(cno char(4) primary key, /*列级完整性约束条件,cno是主码*/cname char(40),cpno char(4), /*cpno的含义是先行课*/ccredit smallint,foreign key (cpno) references course(cno)/*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是cno*/);create table sc(sno char(9),cno char(4),grade smallint,primary key (sno,cno),/*主码有两个属性构成,必须作为表级完整性进行定义*/foreign key (sno) references student(sno),/*表级完整性约束条件,sno是外码,被参照表是student*/foreign key (cno) references course(cno),/*表级完整性约束条件,cno是外码,被参照表示course*/);例1、create table s(cno varchar(3), /*变长的字符串,输入2个字符就是两个字符不会补空格*/sname varchar(20),status int,city varchar(20),constraint pk_sno primary key(sno), /*约束条件的名字为pk_sno*/);create table p(pno varchar(3),pname varchar(20),color varchar(3),weight int,constraint pk_pno primary key (pno), /*约束条件的名字是pk_pno*/);create table j(jno varchar(3),jname varchar(20),city varchar(20),constraint pk_jno primary key(jno) /*约束条件的名字为pk_jno*/);例2、create table spj(sno varchar(3), /*第一个表中的主码*/pno varchar(3),jno varchar(3),qty int, /*数量*/constraint pk_spj primary key(sno,pno,jno), /*主码由3个属性组成*/foreign key(sno) references s(sno),/*表级完整性约束条件,sno是外码,被参照表是s*/foreign key(pno) references p(pno),/*表级完整性约束条件,pno是外码,被参照表是p*/foreign key(jno) references j(jno),/*表级完整性约束条件,jno是外码,被参照表是j*/);2、数据表的更改在s表中添加一个concat 列alter table s add concat varchar(20)在s表中删除concat 列alter table s drop column concat更改s表 concat列的属性 把长度由20改为30alter table s alter column concat varchar(30)联系方式 名字为concat 修改属性为唯一的 属性名为con_concatalter table s add constraint con_concat unique(concat)删除约束关系con_concatalter table s drop constraint con_concat/*插入一个元组*/insert into s valus(s1,精益,20,天津) /*20不能写成20*/试验中的问题的排除与总结:1、在创建spj时有三个实体所以从3个实体中取主码,还有一个数量属性也要写上主码由那3个主码确定2、更改一个数据库中数据表时一定要先使该数据库处于正在使用状态3、constraint是可选关键字,表示 primary key、not null、unique、foreign key 或 check 约束定义的开始。约束是特殊属性,用于强制数据完整性并可以为表及其列创建索引。4、-go可以不加但是要注意顺序 注:go -注释 提示错误5、注意添加一个空元素用 null附 sql备份-创建一个数据库 studentcreate database studentgo-在数据库student中创建表student course sc 注意顺序use student - create table student ( sno char(9) primary key, /*sno是主码 列级完整性约束条件*/ sname char(10) unique, /*sname取唯一值*/ ssex char(2), sage smallint, /*类型为smallint*/ sdept char(20) /*所在系*/ ); /*;要加*/ -第 7 页 共 7 页
展开阅读全文