表操作
例1对于表的教学管理数据库中的表STUDENTS,可以定义如下:
复制代码 代码如下:
CreateTABLESTUDENTS(SNONUMERIC(6,0)NOTNULL
SNAMECHAR(8)NOTNULL
AGENUMERIC(3,0)
SEXCHAR(2)
BPLACECHAR(20)
PRIMARYKEY(SNO))
例2对于表的教学管理数据库中的表ENROLLS,可以定义如下:
复制代码 代码如下:
CreateTABLEENROLLS(SNONUMERIC(6,0)NOTNULL
CNOCHAR(4)NOTNULL
GRADEINT
PRIMARYKEY(SNO,CNO)
FOREIGNKEY(SNO)REFERENCESSTUDENTS(SNO)
FOREIGNKEY(CNO)REFERENCESCOURSES(CNO)
CHECK((GRADEISNULL)or(GRADEBETWEEN0AND100)))
例3根据表的STUDENTS表,建立一个只包含学号、姓名、年龄的女学生表。
复制代码 代码如下:
CreateTABLEGIRLASSelectSNO,SNAME,AGE
FROMSTUDENTSWhereSEX='女';
例4删除教师表TEACHER。
DropTABLETEACHER
例5在教师表中增加住址列。
AlterTABLETEACHERSADD(ADDRCHAR(50))
例6把STUDENTS表中的BPLACE列删除,并且把引用BPLACE列的所有视图和约束也一起删除。
AlterTABLESTUDENTSDropBPLACECASCADE
例7补充定义ENROLLS表的主关键字。
AlterTABLEENROLLSADDPRIMARYKEY(SNO,CNO);
视图操作(虚表)
例9建立一个只包括教师号、姓名和年龄的视图FACULTY。(在视图定义中不能包含orDERBY子句)
CreateVIEWFACULTYASSelectTNO,TNAME,AGEFROMTEACHERS
例10从学生表、课程表和选课表中产生一个视图GRADE_TABLE,它包括学生姓名、课程名和成绩。
CreateVIEWGRADE_TABLEASSelectSNAME,CNAME,GRADE
FROMSTUDENTS,COURSES,ENROLLS
WhereSTUDENTS.SNO=ENROLLS.SNOAND
COURSES.CNO=ENROLLS.CNO
例11删除视图GRADE_TABLE
DropVIEWGRADE_TABLERESTRICT
索引操作
例12在学生表中按学号建立索引。
CreateUNIQUEINDEXSTONSTUDENTS(SNO,ASC)
例13删除按学号所建立的索引。
DropINDEXST
数据库模式操作
例14创建一个简易教学数据库的数据库模式TEACHING_DB,属主为ZHANG。
CreateSCHEMATEACHING_DBAUTHRIZATIONZHANG
例15删除简易教学数据库模式TEACHING_DB。
(1)选用CASCADE,即当删除数据库模式时,则本数据库模式和其下属的基本表、视图、索引等全部被删除。
(2)选用RESTRICT,即本数据库模式下属的基本表、视图、索引等事先已清除,才能删除本数据库模式,否则拒绝删除。
DropSCHEMATEACHING_DBCASCADE
当前1/3页123下一页阅读全文