工作報告 > 實驗報告

資料庫上機實驗報告


資料庫上機實驗報告


試驗內容 

1、 資料表的建立 

基本表《簡單的》帶有主鍵 

帶有外碼約束的 

2、 資料表的修改 

增加移除列  

修改列屬性類型 

增加移除約束 

            元組的增加,修改,移除      

移除資料表 


試驗過程 

1、create table student 

 primary key ,     /*sno是主碼 列級完整性約束條件*/ 

sname char unique,      /*sname取唯一值*/ 

ssex char, 

sage smallint,            /*類型為smallint*/ 

sdept char              /*所在系*/ 

);      

create table course 

 primary key,   /*列級完整性約束條件,cno是主碼*/ 

cname char, 

cpno char,                   /*cpno的含義是先行課*/ 

ccredit smallint, 

foreign key  references course 

/*表級完整性約束條件,cpno是外碼,被參照表是course,被參照列是cno*/ 


); 

create table sc 



cno char, 

grade smallint, 

primary key , 

/*主碼有兩個屬性構成,必須作為表級完整性進行定義*/ 

foreign key  references student, 

/*表級完整性約束條件,sno是外碼,被參照表是student*/ 

foreign key  references course, 

/*表級完整性約束條件,cno是外碼,被參照表示course*/ 

); 

例1、create table s 

, /*變長的字元串,輸入2個字元就是兩個字元不會補空格*/ 

sname varchar, 

status int, 

city varchar, 

constraint pk_sno primary key,       /*約束條件的名字為pk_sno*/ 

); 

create table p 



pname varchar, 

color varchar, 

weight int, 

constraint pk_pno primary key ,      /*約束條件的名字是pk_pno*/ 

); 

create table j 



jname varchar, 

city varchar, 

constraint pk_jno primary key /*約束條件的名字為pk_jno*/ 

); 

例2、create table spj 

, /*第一個表中的主碼*/ 

pno varchar, 

jno varchar, 

qty int,            /*數量*/ 

constraint pk_spj primary key, /*主碼由3個屬性組成*/ 

foreign key references s, 

/*表級完整性約束條件,sno是外碼,被參照表是s*/ 

foreign key references p, 

/*表級完整性約束條件,pno是外碼,被參照表是p*/ 

foreign key references j, 

/*表級完整性約束條件,jno是外碼,被參照表是j*/ 


); 

2、資料表的變更 

在s表中增加一個concat 列  

alter table s add concat varchar 

在s表中移除concat 列 

alter table s drop column concat  

變更s表 concat列的屬性 把長度由20改為30 

alter table s alter column concat varchar 

聯系方式 名字為concat 修改屬性為唯一的 屬性名為con_concat 

alter table s add constraint con_concat unique       

移除約束關系con_concat 

alter table s drop constraint con_concat 


/*插入一個元組*/ 


insert into s valus /*20不能寫成』20』*/ 

試驗中的問題的排除與總結: 

1、在建立spj時  

有三個實體所以從3個實體中取主碼,還有一個數量屬性也要寫上 

主碼由那3個主碼確定 

2、變更一個資料庫中資料表時一定要先使該資料庫處於正在使用狀態 

3、constraint 

是可選關鍵字,表示 primary key、not null、unique、foreign key 或 check 約束定義的開始。約束是特殊屬性,用於強製資料完整性並可以為表及其列建立索引。 

4、--go可以不加但是要註意順序 註:go --註解           提示錯誤 

5、註意增加一個空元素用 null 

附 sql備份 


--建立一個資料庫 student 

create database student 

go 

--在資料庫student中建立表student course sc 註意順序 

use student 
---------------------------------------------------------------- 
create table student 
 primary key, /*sno是主碼 列級完整性約束條件*/ 
sname char unique, /*sname取唯一值*/ 
ssex char, 
sage smallint,   /*類型為smallint*/ 
sdept char   /*所在系*/ 
);     /*;要加*/ 
-----------

1 2

推薦文章

熱門文章

資料庫上機實驗報告@名言佳句大全