第三章关系数据库标准语言SQL(3.16).ppt
文本预览下载声明
第三章 关系数据库标准语言SQL;3.1 SQL概述;1.历史
SQL: Structured Query Language
1974年,由Boyce和Chamber提出
1975-1979年,在System R上实现,由IBM的San Jose研究室研制,称为Sequel;2.标准化
有关组织
ANSI(American Natural Standard Institute)
ISO(International Organization for Standardization)
有关标准
SQL-86
“数据库语言SQL”
SQL-89
“具有完整性增强的数据库语言SQL”,增加了对完整性约束的支持
SQL-92
“数据库语言SQL”,是SQL-89的超集,增加了许多新特性,如新的数据类型,更丰富的数据操作,更强的完整性、安全性支持等。
SQL-2003
增加对面向对象模型的支持;3. 特点
综合统一
高度非过程化
面向集合的操作方式
两种使用方式,统一的语法结构
自含式语言(用户使用),
又是嵌入式语言(程序员使用)
语言简洁,易学易用;SQL功能;用户1;;3.2 SQL的数据定义功能;3.2 SQL的数据定义功能;3.2 SQL的数据定义功能;学生-课程 数据库;Student表;Course表;SC表;3.3 数据定义 ;3.3.1 数据库的创建;SQL Server 2005管理界面的启动及使用:
单击“开始”|所有程序|Microsoft SQL Server 2005| SQL Server Management Studio
弹出“连接到服务器”对话框,单击“连接”,服务器的名字选取为“本地机名字”(机器编号);;例3.1 创建学生课程数据库,各项参数取系统默认值。
在管理界面单击“新建查询”,输入下面的T-SQL语句
Create Database STCDB;
按“执行”或“ctrl +E” 快捷健
返回管理界面就能看到数据库名字;一.基本表的定义(CREATE)
格式
一般格式如下:
CREATE TABLE 表名
( 列名数据类型 [列级完整性约束条件]
[,列名 数据类型 [列级完整性约束条件]...]
[,表级完整性约束条件]);
;基本表的定义; 表级完整性约束条件:
包括主码、外码、用户自定义商业规则或完整性约束,可以用以下语法来描述:
[,primary key(列名 [,列名] …)]
[,foreign key (列名 [,列名] …)
references 表名 (列名 [,列名] …)]
[,check(条件)];NOT NULL;例3.2 建立“学生”表
Use STCDB;
CREATE TABLE STUDENT
( SNO CHAR(8),
SNAME CHAR(8) NOT NULL,
SAGE SMALLINT,
SSEX CHAR(2)DEFAULT ‘男’,
PRIMARY KEY (SNO),
CHECK (SEX=‘男’ OR SEX=‘女’)
);Use STCDB;
CREATE TABLE SC
(SNO CHAR(8),
CNO CHAR(4),
GRADE SMALLINT,
PRIMARY KEY (SNO,CNO),
FOREIGN KEY (SNO)
REFERENCES STUDENT(SNO),
FOREIGN KEY (CNO)
REFERENCES COURSE(CNO),
CHECK((GRADE IS NULL) OR
GRADE BETWEEN 0 AND 100));课程表Course;允许的常用类型为:
CHAR(n) 长度为n的定长字符串
VARCHAR(n) 最大长度为n的变长字符串
INTEGER(INT)全字长二进制整数
SMALLINT 半字长二进制整数
FLOAT 双字长浮点数
DATE 日期型,格式为YYYY-MM-DD
TIME 时间性,格式为HH.MM.SS
;基本表的定义;二、修改基本表定义(ALTER)
格式为:
ALTER TABLE 表名
[ ADD 新列名数据类型[完整性约束] ]
[ DROP完整性约束名]
[ MODIFY列名 数据类型]; ;注意!
(1)只能间接删除
显示全部