數學與資訊科技學院
實驗課程名稱: ms-sql server資料庫技術實驗
實驗專案名稱資料表與表資料
專業班級14計科接1
學號20140083103
姓名張凱旭
指導教師李偉
1. 學會使用物件資源管理器和t-sql語句建立資料表,插入、修改和刪除表資料。
2. 了解資料庫完整性的意義和分類。
3. 學會使用物件資源管理器和t-sql語句定義、刪除約束,建立、繫結預設值和規則。
1. 依據student學生管理系統使用物件資源管理器建立表。
a) 在表上右鍵新建表:
b) 設定各個表的屬性:
c) 在列屬性中繫結預設值:
2. 使用drop table刪除上步建立的表,再利用重新t-sql建立。
drop table stud_grade
create table stud_grade
(stud_id char(10) primary key default '0401010101',
stud_name nvarchar(12) not null,
course_id char(10),
grade numeric(4,1)
)3. 利用物件資源管理器或t-sql語言每個表錄入至少10行資料。
insert into stud_grade
values('0401050201','陳紅','0401010101','91')
insert into stud_grade
values('0401040112','孫強','0401010104','83')
insert into stud_grade
values('0401020103','李偉','0401010106','86')
insert into stud_grade
values('0401010634','乾坤','0401010106','78')
insert into stud_grade
values('0401030213','鄭芳','0401010106','77')
insert into stud_grade
values('0401010102','袁飛','0401010106','95')
insert into stud_grade
values('0401040123','孔融','0401010106','83')
insert into stud_grade
values('0401050127','張軍','0401010106','84')
insert into stud_grade
values('0401050128','張強','0401010106','89')
insert into stud_grade
values('0401050129','關羽','0401010106','83')
4. 建立教師資訊teacher_info表。
create table teacher_info
(teacher_id char(6) not null constraint de_teacher_id default '010101',
teacher_name nvarchar(4) not null,
gender nchar(1) ,
age int,
tech_tiele nchar(5),
telephone varchar(12),
salary decimal(7,2) constraint de_salary default '418',
course_id char(10)
)5. 分別使用物件資源管理器和t-sql修改表結構。
1) 將teacher-info表中的teacher—id列長度從6個字元改變為8個字元。
i. t-sql命令修改
alter table teacher_info
alter column teacher_id char(8);
ii. 物件資源管理器修改
將資料更改為8
2) 在dept—code表中新增一列dept-demo,其資料型別為可變字元型,30位。
i. t-sql語言新增
alter table dept_code
add dept_demo nvarchar(30)
ii. 資源管理器新增
為表dept_code 新增一列。
3) 在stud-info表增加「入學時間」列,其資料型別為日期型。
i. t-sql 建立
create table stud_info
(stud_id char(10) not null default '041010101',
name nvarchar(4) not null ,
birthday datetime,
gender nchar(1),
adderss nvarchar(20),
telcode char(12),
zipcode char(6),
mark decimal(3,0) default 560
)ii. 物件資源管理器建立
將屬性值等填入。
6. 建立約束。
1) 為資料表stud-info建立對應的check約束,限制mark在560到600之間。
alter table stud_info
add constraint stud_check check (mark>=560 and mark <=600)
2) 使用t-sql語句建立表及約束,設定stud-id為主鍵。
alter table stud_info
add constraint prim_key primary key (stud_id)
3) 為stud-info表的telecode建立unique約束。
alter table stud_info
add constraint uniq_tel unique(telcode)
4) 為stud-grade表中的stud-id建立外來鍵。
alter table dbo.stud_grade
add constraint fk_stud foreign key(stud_id)
references dbo.stud_info(stud_id)
5) 為stud-info表中的gender建立預設值,「男」。
alter table stud_info
add constraint df_gender default '男' for gender;
7. 修改資料
6) 在成績表中,將課程號為「0401010101」(指定課號)的成績在原來基礎上增加10%。
update stud_grade
set grade = grade * 1.1
7) 將所有低於60分的成績置空。
update stud_grade
set grade = null
where grade<60
8) 將所有老師的年齡加1.
update teacher_info
set age = age+1
8. 刪除資料
9) 刪除學號為「0401020201」(指定學號)的學生記錄
delete from stud_info
where stud_id = '0401020201'
10) 刪除計算機工程系(指定系)所有學生的成績。
9. 建立預設值物件d1,nchar(1),值為「男」,並繫結到學生表的gender列和教師表的gender列。
create default d1 as '男'
goexec sp_bindefault d1,'stud_info.gender'
goexec sp_bindefault d1,'teacher_info.gender'
go10. 建立規則物件r1,@a=「男」 or @a=「女」,並繫結到學生表的gender列和教師表的gender列。
create rule r1
as @a='男' or @a = '女'
goexec sp_bindrule r1,'stud_info.gender'
goexec sp_bindrule r1,'teacher_info.gender'
go這次實驗中我覺得資料庫查詢是非常複雜的程式,需要非常嚴謹。尤其建立規則和預設值,並且使用儲存過程繫結屬性,非常靈活,對於程式設計變得非常清晰明了。
實驗1實驗報告樣本
西華大學實驗報告 開課學院及實驗室 機械學院專業實驗中心實驗時間 年月日 1 實驗目的 1.學習使用matlab,學會用matlab提供的函式對訊號進行頻譜分析 2.加深了解傅利葉變換的基本思想和物理意義 3.觀察和分析由多個頻率 幅值和相位成一定關係的正弦波疊加的合成波形 4.掌握取樣定理 5.理...
vb實驗報告樣本
一 實驗目的和要求 1 熟悉 visual basic6.0的整合開發環境和視覺化程式設計的基本概念。2.掌握 vb資料型別的基本概念。3.掌握 vb中變數 常量的定義規則,各種運算子的功能,表示式的構成和求值方法。4.掌握 常用函式的功能和用法。一 實驗目的和要求 1.掌握 print方法的使用。...
物化實驗報告樣本 2
物理化學實驗報告 專業班級化工112班姓名序號 3 同組姓名指導老師實驗日期 2013年3月18 實驗名稱液體飽和蒸汽壓的測定 一 實驗目的 1 掌握用等位計測定乙醇在不同溫度下的飽和蒸汽壓。2 學會用 法求乙醇在實驗溫度範圍內的平均摩爾蒸發焓與正常沸點。二 實驗原理 一定溫度下,液體純物質與其氣相...