首页 > 代码库 > 数据库1

数据库1

一、建表指令

比如创建一个学生表student,它由学号Sno,姓名Sname,性别Ssex,年龄Sage,所在系Sdept五个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。

CREATE TABLE Student

(Sno    CHAR(10) NOT NULL UNIQUE,

 Sname  CHAR(20) UNIQUE,

 Ssex    char(2),

Sage    INT,

Sdept  char(15)

)

 

二、增加列、删除列、修改列

1、增加列Stel

Alter table StudentADD Stel Char(12)

2、删除列Stel

Alter Table StudentDROP COLUMN Stel

3、修改列Sdept

ALTER  Table  Student  ALTER  COLUMN  Sdept  CHAR(8)  Sno CHAR(8)

 

三、建立与删除索引

1、在表Student中建立按年龄Sage升序建立索引

建立索引:Create  INDEX  S_INDEX  ON  Student(Sage)

2、删除索引

DROP  INDEX  Student  S_INDEX

 

四、连接查询。

在对表进行连接时,最常用的连接条件是等值连接,也就是使两个表中对应列相等所进行的连接,通常一个列是所在表的主键,另一个列是所在表的主键或外键,只有这样的等值连接才有意义。

比如说有两张表分别为courses表(cnocnamecredit)和enrolls表(snocnograde)。

查询所有学生所选的课程名称:

Select  sno,  enrolls.cno, cname, grade  from  enrolls, courses WHERE enrolls.cno = courses.cno比如查询Student表中所有系的名称,去掉重复行

Select  distinct  department  From  student

 

 

六、常用条件表达式运算符IN,NOT IN;between,and,not like.

在上面的Student表和enrolls表中,查询成绩在80分以上的的学号和姓名。

Select  sno,  sname  From  Student WHERE  sno  IN (select sno FROM enrolls Where grade > 80)

上面的SQL语句也是嵌套查询。

 

数据库1