文档详情

SQL语句大全实例.doc

发布:2017-02-06约1.33万字共12页下载文档
文本预览下载声明
SQL语句实例 ? 表操作 ? ? 例 1? 对于表的教学管理数据库中的表 STUDENTS ,可以定义如下: ?? CREATE TABLE STUDENTS (SNO NUMERIC (6, 0) NOT NULLSNAME?CHAR (8) NOT NULL, AGE NUMERIC(3,0) , SEX CHAR(2), BPLACE? CHAR(20), PRIMARY KEY(SNO)) 例 2? 对于表的教学管理数据库中的表 ENROLLS ,可以定义如下: ????? ??CREATE? TABLE? ENROLLS ??????? (SNO????? NUMERIC(6,0)? NOT NULL ??????? CNO???? CHAR(4)? NOT NULL ??????? GRADE?? INT ??????? PRIMARY KEY(SNO,CNO) ??????? FOREIGN KEY(SNO) REFERENCES STUDENTS(SNO) ??????? FOREIGN KEY(CNO) REFERENCES COURSES(CNO) ??????? CHECK ((GRADE IS NULL) OR (GRADE BETWEEN 0 AND 100))) 例 3? 根据表的 STUDENTS 表,建立一个只包含学号、姓名、年龄的女学生表。 ??????? CREATE TABLE GIRL ??????? AS SELECT SNO, SNAME, AGE ??????? FROM STUDENTS ??????? WHERE SEX= 女 ; ? 例 4? 删除教师表 TEACHER 。 ??????? DROP? TABLE? TEACHER 例 5? 在教师表中增加住址列。 ?????? ALTER TABLE TEACHERS ?????? ADD (ADDR CHAR(50)) 例 6? 把 STUDENTS 表中的 BPLACE 列删除,并且把引用 BPLACE 列的所有视图和约束也一起删除。 ??????? ALTER TABLE STUDENTS ??????? DROP BPLACE CASCADE 例 7? 补充定义 ENROLLS 表的主关键字。 ????? ?ALTER TABLE ENROLLS ?????? ADD PRIMARY KEY (SNO,CNO) ; ? 视图操作(虚表) ? 例 9? 建立一个只包括教师号、姓名和年龄的视图 FACULTY 。 ( 在视图定义中不能包含 ORDER BY 子句 ) ??????? CREATE VIEW FACULTY ??????? AS SELECT TNO, TNAME, AGE ??????? FROM TEACHERS 例 10? 从学生表、课程表和选课表中产生一个视图 GRADE_TABLE , 它包括学生姓名、课程名和成绩。 ??????? CREATE VIEW GRADE_TABLE ??????? AS SELECT? SNAME,CNAME,GRADE ??????? FROM? STUDENTS,COURSES,ENROLLS ??????? WHERE? STUDENTS.SNO = ENROLLS.SNO AND ??????? COURSES.CNO=ENROLLS.CNO 例 11? 删除视图 GRADE_TABLE ??????? DROP VIEW GRADE_TABLE RESTRICT ? 索引操作 ? 例 12? 在学生表中按学号建立索引。 ??????? CREATE ?UNIQUE ?INDEX ?ST ??????? ON STUDENTS (SNO, ASC) 例 13? 删除按学号所建立的索引。 ??????? DROP INDEX ST ? 数据库模式操作 ? 例 14? 创建一个简易教学数据库的数据库模式 ? TEACHING_DB ,属主为 ZHANG 。 ??????? CREATE SCHEMA TEACHING_DB ?AUTHRIZATION ?ZHANG 例 15? 删除简易教学数据库模式 TEACHING_DB 。(( 1 )选用 CASCADE ,即当删除数据库模式时,则本数据库模式和其下属的基本表、视图、索引等全部被删除。( 2 )选用 RESTRICT ,即本数据库模式下属的基本表、视图、索引等事先已清除,才能删除本数据库模式,否则拒绝删除。) ??????? DROP SCHEMA TEACHING_DB CASCADE
显示全部
相似文档