use master;
if exists(select * from sysdatabases where name='db0326ms')
drop database db0326ms;
Create Database db0326ms
On (Name = db0326ms_dat,
Filename = 'd:\db0326ms_dat.mdf',
Size = 10,Maxsize = 50, Filegrowth = 5 )
Log On ( Name ='db0326ms_log',
Filename = 'd:\db0326ms_log.ldf',
Size= 5MB, Maxsize = 25MB, Filegrowth = 5MB ) ;
use db0326ms;
Create Table Student
(
Sno INT,
Sname CHAR(10) NOT NULL,
Gender CHAR(2),
Sage INT,
Sdept CHAR(15),
Constraint pk_student_1 Primary Key (Sno) )
Create Table Course
(
Cno INT,
Cname CHAR(10) NOT NULL,
Credit INT,
Cpno INT,
Constraint pk_Course_1 Primary Key (Cno) )
CREATE TABLE SC
( Sno INT NOT NULL,
Cno INT NOT NULL,
Grade SMALLINT,
Constraint pk_SC_1 PRIMARY KEY (Sno, Cno),
Constraint fk_SC_1 FOREIGN KEY (Sno) REFERENCES Student(Sno),
Constraint fk_SC_2 FOREIGN KEY (Cno) REFERENCES Course(Cno)
);
Alter Table SC drop constraint fk_SC_1;
/*删除某个约束*/
Alter Table SC add constraint fk_SC_1 FOREIGN KEY (Sno) REFERENCES Student(Sno);
/*在已定义的表中插入约束*/
Alter Table Course Alter Column Cname CHAR(10);
/*修改该表该列为空*/
Alter Table Course Alter Column Cname CHAR(10) not null;
/*修改该表该列为非空*/
Alter Table Student Add Degree CHAR(10) default '本科';
/*在已创建好的表中增加一列,若不进行说明默认为本科*/
Alter Table Course Add Constraint C9 Check(Cname is not null)
/*修改某个表中某一项的约束,C9为自定义*/
ALTER TABLE Student ADD CONSTRAINT C1 CHECK (Sno BETWEEN 000000000 AND 999999999);
/*设定Sno大小必须在0到999999999之间*/
ALTER TABLE Student ADD CONSTRAINT C2 CHECK (Sage < 40);
/*设定Sage必须小于40*/
ALTER TABLE Student ADD CONSTRAINT C4 CHECK (Ssex IN ('男','女'));
/*性别只能男女*/
ALTER TABLE Student ADD CONSTRAINT C3 CHECK (Degree IN ('本科','硕士','博士','其他') );
/*学位只能是本科,硕士,博士,其他*/
--the following command will report an error, 违反约束C1
--Insert into student values(10001,'张三','男',19,'ds','本科'),
--(10002,'小红','女',8,'cs','本科');
--the following command will work correctly
Insert into student values(201215121,'张三','男',19,'ds','本科'),
(201215132,'小红','女',8,'cs','本科');
/*插入数据*/
select * from Student;
/*查看表*/
Update student set sage=18 where sno=201215132;
/*修改学号为201215132学生的年龄为18*/
Delete from student where sno=900001;
/*删除某一行*/
Delete from student
/*删除student表*/
除了create database之外还有直接建立表的神奇方法
-
首先在目标盘建立存放数据库文件的文件夹,目的是为了方便我们建立数据库的时候将文件保存在这个文件夹下面。方便我们日后的备份和查找。
-
2
打开数据库,登录进入数据库。
-
3
找到“数据库”然后右键选择“新建数据库”来新建我们自己的数据库。(这里有自带的数据库可以忽略,只用管自己建立的就行了)。
-
4
然后我们可以看到“数据库名称”。在这里写上我们想建立的数据库名称。这里以“大学生成绩管理系统”为例。然后在“路径”选项下面选择我们想要保存的数据库文件地址(也就是第一步建立的位置,也可以不用选择默认位置,只需要记好具体位置在那就行了)。
-
5
找到我们新建的数据库,打开“表”,选择“新建表”。来新建一个数据库 表格。
-
6
输入我们想要输入的字段名,数据类型,是否为空(如果打上对勾,就是不添加数据也可以,没有打上就是添加数据的时候必须添加上去)。
-
7
一个表格,一定会有个主键,那么主键该怎么设置呢?选中你想设置的那一行,在这一行的开头右键选择“设置主键”。就可以把这个字段设置成主键了。
-
8
输入完成之后,“Ctrl+s”保存,会弹出来你要保存的表,然后给表起个表名即可。
-
9
右键“表”找到刷新,刷新之后就会出现那张表格了,如果没点击“刷新”就有自己新建立的表,则不需要刷新。
-
10
找到我们建立的表右键选择“编写脚本”然后再选择就可以看到“CREATE”(创建表),“DROP”丢弃表,“SELECT”(查询),“INSERT”(插入数据),“UPDATE”(更新表),“DELETE”(删除)的操作。这种方法都可以对表进行对应的操作,但是一般不这样操作。
-
11
另外一种操作是,
-
12
这里的白色区域是数据库语言操作。就以插入数据为例做示范。然后点击“新建查询”下面的“执行”操作进行插入。
-
13
那么执行过之后应该怎样查看呢?右键建立的表选择“编辑前200行”。
-
14
这里就看到了,刚刚插入的数据。当然,也可以直接右键建立的表选择“编辑前200行”,进行对表格的数据插入。
-
15
-
16
这里示范的是,查询语句,带有条件的查询语句。同样是点击“新建查询”下面的“执行”操作进行查询。在下面就能看到自己查询的信息。
- 看完之后只能惊呼,秀啊,为啥老师交的那么麻烦
-
-