1. 程式人生 > >【Sql Server學習】Sql Server基礎第一篇

【Sql Server學習】Sql Server基礎第一篇

* 建立資料庫MyDb */

create database MyDb
on
(
       name=MyDb_data,
       filename='d:\sql\MyDb_data.mdf',
       size=3,
       maxsize=4,
       filegrowth=1
)
log on
(
       name=MyDb_log,
       filename='d:\sql\MyDb_data.ldf',
       size=1,
       maxsize=2,
       filegrowth=1
)

/*選擇MyDb資料庫*/

use MyDb
GO

/* 檢視所有的資料庫 */

sp_databases
GO

/* 檢視所有的資料庫 */

select * from sysdatabases
go

/*在資料庫MyDb中建立student表*/

use MyDb
go
create table student
(
       sno char(9) primary key,
       sname char(6) not null,
       ssex char(2) default ('男'),
       sage int,
       sdept varchar(10)
)

/*顯示所有的表,包含系統表*/

sp_tables;

/*在MyDb資料庫中建立course表*/

create table course
(
       cno varchar(3) primarykey,
       cname varchar(12),
       cpno varchar(3),
       ccredit int
)

/*在MyDb資料庫中建立sc表,並且與student和sc外聯*/

create table sc
(
       sno char(9) not null,
       cno varchar(3) not null,
       grade int,
       primary key(sno,cno),
       foreign key (sno)references student (sno) on delete cascade on update cascade,
       foreign key (cno)references course (cno) on delete cascade on update cascade
)

/*在student表新增Telephone列,11長度的char*/

alter table student
add Telephone char(11)

/*更改student表的Sdept列為16個長度的varchar*/

alter table student
alter column sdept varchar(16)

/*sc表的成績grade列建立約束,要求在0到100範圍*/

alter table sc
add constraint ck_grade check (grade>=0 and grade <= 100)

/*student表的學好sno列建立約束,學號必須由9位阿拉伯數字組成*/

alter table student
add constraint ck_sno check (sno like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')

/*刪除sc表在grade列上的check約束,約束名位ck_grade*/

alter table sc
drop ck_grade

/*刪除Telephone屬性列*/

alter table student
drop column Telephone

/*student表的ssex列增加預設值約束,設定預設值位'男'預設值的約束名字位Stu_sex_default */

alter table student
add constraint Stu_sex_defalut default ('男') for ssex

/*向student表中插入兩條記錄*/

insert into student values ('220021510','李勇','男',20,'ls');
insert into student values ('200215125','tom','女',19,'cs');
select * from student;
go
 

/*修改student表中的記錄*/

update student set sdept='cs' where sname='李勇';
select *from student;

/*刪除李勇記錄*/

delete from student where sname='李勇'
select *from student;
go


整理下實驗報告,以防以後需要用的時候忘了