文档介绍:查询与更新数据定义 Drop view Create view 视图 Alter table Drop table Create table 表 Drop view Create index 索引 Alter database Drop database Create database 数据库修改删除创建操作方式操作对象创建表? Create table < 表名> (< 列名> < 数据类型> [ 列完整性约束条件] [,< 列名> < 数据类型> [ 列完整性约束条件]]… [, 表级完整性约束条件]) ? Create table student(Sno CHAR(5) PRIMARY KEY, Sname CHAR(20) UNIQUE, Ssex CHAR(1), Sage INT, Sdept CHAR(15)); ?表级完整性约束包括: ? Primary key 名(字段[,字段 2]) ? foreign key 名 reference 表2(字段[,字段 2]) ? Check 名内容? default ,PRIMARY KEY R(Sno )); 其他约束举例 Create table SC( Sno CHAR(5) FOREIGN KEY REFERENCE student(Sno ), Cno CHAR(6) FOREIGN KEY REFERENCE o ), Grade INT DEFAULT 0, PRIMARY KEY ( o ) ) ; Create table course( Cno char(6) primary key , Cname char(10) not null unique , Cpno char(6), Ccredit INT, constraint c1 check Ccredit >0 ); 课堂练习?创建教材 P74 页第 5题的 SPJ 数据库(包括表, 表的主码,外码) ?修改表 P增加两个约束: ? weight>1 ? Color 的默认值是‘红’查询语句的完整格式 Select [all | distinct] < 目标列表达式> [ 别名][,< 目标列表达式> [ 别名]]… From < 表名或视图名> [ 别名][,<表名或视图名> [ 别名]]… Where < 条件表达式> Group by < 列名> [having < 条件表达式>] Order by < 列名 1> [ASC | Desc ] [, < 列名 1> [ASC | Desc ]] 例? Student( Sno ,Sname,Ssex,Sage,Sdept ) ? Course( Cno ,Cname,redit ) ? SC( o ,Grade ) 单表查询?查询全体学生的学号和姓名 Select Sno,Sname from Student; ?查询全体学生的所有信息 Select * from student; ?查询全体学生的姓名及其出生年份 Select Sname , 2008-Sage from student; ?查询全体学生的姓名、出生年份及所在系,要求小写 Select Sname,2008-Sage, islower(Sdept ) from student; 单表查询?查询选修了课程的学生学号,要求相同的学号只保留一个 Select distinct Sno from SC ; ?查询计算机系全体学生的名单 Select * from Student where Sdept =‘ CS ’; ?查询年龄在 18-20 岁之间的学生 Select * from Student where Sage between 18 and 20; ?查询 IS,MA 和 CS 系的学生的姓名和性别 Select Sname , Ssex from student where Sdept =‘ IS’ or Sdept =‘ MA ’ or Sdept =‘ CS ’ ; Select Sname,Ssex from student where Sdept in (‘ IS’,’ CS ’,’ MA ’); ?查询 IS,MA 和 CS 之外的其他系的学生的姓名和性别 Select Sname,Ssex from student where Sdept not in (‘ IS