第三章关系数据库标准语言sql.pptVIP

  • 3
  • 0
  • 约2.15万字
  • 约 151页
  • 2019-11-12 发布于湖北
  • 举报
第三章关系数据库标准语言SQL SQL 概述 SQL Structured Query Language 结构化查询语言 最新标准SQL-2003 关系数据库语言 SQL 概述 SQL的特点 综合统一 数据定义语言DDL(Schema Data Definition Language) 建立数据库、定义关系模式… 数据操纵语言DML(Data Manipulation Language) 插入、修改、查询… 数据控制语言DCL(Data Control Language) 数据库安全性控制 SQL 概述 高度非过程化 只需描述所需的信息,不需给出获取该信息的具体过程。既不需要指定数据的访问方法 面向集合的操作方式 操作对象、查询结果都是元组的集合 以同一种语法结构提供两种使用方式 独立语言 嵌入式语言 语言简捷,易学易用 核心功能只用了9个动词 语言接近于英语口语 SQL 概述 SQL 语言的基本概念 学生-课程数据库 学生表 Student(Sno, Sname, Ssex, Sage, Sdept) 课程表 Course(Cno, Cname, Cpno, Ccredit) 学生选课表 SC(Sno, Cno, Grade) 数据定义 数据定义 定义模式 CREATE SCHEMA 模式名 AUTHORIZATION 用户名 调用该命令的用户必须拥有DBA权限,或CREATE SCHEMA权限 定义模式实际上定义了一个命名空间,在这个空间中可以进一步定义该模式包含的数据库对象,如基本表、视图、索引等 数据定义 删除模式 DROP SCHEMA 模式名 CASCADE|RESTRICT CASCADE(级联) 在删除模式的同时把该模式中所有的数据库对象全部一起删除 RESTRICT(限制) 如果模式中已经定义了下属的数据库对象,则拒绝改删除操作 数据定义 定义基本表 CREATE TABLE 表名 (列名 数据类型 [NOT NULL] [UNIQUE] [DEFAULT 缺省值] [CHECK 条件],… PRIMARY KEY(字段列表), FOREIGN KEY (字段列表) REFFERENCES 表名(字段名)) 如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则即可定义在列级也可定义在表级 数据定义 尽管 UNIQUE 约束和 PRIMARY KEY约束都强制唯一性,但在强制下面的唯一性时应使用 UNIQUE 约束而不是 PRIMARY KEY 约束: 非主键的一列或列组合。 一个表可以定义多个 UNIQUE 约束,而只能定义一个 PRIMARY KEY 约束。 允许空值的列。 允许空值的列上可以定义 UNIQUE 约束,而不能定义 PRIMARY KEY 约束。 FOREIGN KEY 约束也可引用 UNIQUE 约束。 数据定义 建立一个“学生”表Student,其中学号不能为空,值是唯一的,并且姓名取值也唯一。 CREATE TABLE Student (Sno CHAR(5) PRIMARY KEY, Sname CHAR(20) UNIQUE, Ssex CHAR(1) DEFAULT 1, Sage INT, Sdept CHAR(15)); 数据定义 建立一个“学生选课”表SC,其中(Sno, Cno)为主码,Sno为外码。 CREATE TABLE SC( Sno CHAR(5) , Cno CHAR(3) , Grade int, PRIMARY KEY (Sno, Cno) FOREIGN KEY(Sno) REFFERENCE Student(Sno)); 数据定义 修改基本表 ALTER TABLE 表名 [ADD 列名 数据类型 …] [ALTER COLUMN 列名 数据类型 …] [ADD 约束条件] [DROP 约束条件] 在某些DBMS中,ALTER TALBE语句不能删除已存在的列,如果不再需要,则简单地忽略即可。 数据定义 向Student表增加“入学时间”列,其数据类型为日期型。 ALTER TABLE Student ADD COLUMN Scome DATE

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档