欢迎来到天天文库
浏览记录
ID:35304830
大小:23.21 KB
页数:8页
时间:2019-03-23
《数据库基础sql语句汇总》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1.定义模式为用户ZHANG创建了一个模式TEST,并在其中定义了一个表TAB1。CREATESCHEMATESTAUTHORIZATIONZHANGCREATETABLETAB1(COL1SMALLINT,COL2INT,COL3CHAR(20),COL4NUMERIC(10,3),COL5DECIMAL(5,2));2.删除模式DROPSCHEMA<模式名>2、RESTRICT>CASCADE(级联)删除模式的同时把该模式中所有的数据库对象全部删除RESTRICT(限制)如果该模式中定义了下属的数据库对象(如表、视图等),则拒绝该删除语句3、的执行。当该模式中没有任何下属的对象时才能执行。DROPSCHEMAZHANGCASCADE;删除模式ZHANG同时该模式中定义的表TAB1也被删除3.基本表的创建建立一个“课程”表CourseCREATETABLEStudent(SnoCHAR(9)PRIMARYKEY,/*列级完整性约束条件*/SnameCHAR(20)UNIQUE,/*Sname取唯一值*/SsexCHAR(2),SageSMALLINT,SdeptCHAR(20))建立一个“学生选课”表SCCREATETABLESC(SnoCHAR(9),CnoCHAR(4),GradeSMALL4、INT,PRIMARYKEY(Sno,Cno),/*主码由两个属性构成,必须作为表级完整性进行定义*/FOREIGNKEY(Sno)REFERENCESStudent(Sno),/*表级完整性约束条件,Sno是外码,被参照表是Student*/FOREIGNKEY(Cno)REFERENCESCourse(Cno)/*表级完整性约束条件,Cno是外码,被参照表是Course*/);3.修改基本表向Student表增加“入学时间”列,其数据类型为日期型。ALTERTABLEStudentADDS_entranceDATE;将年龄的数据类型由字符型(假设原来的5、数据类型是字符型)改为整数。ALTERTABLEStudentALTERCOLUMNSageINT;增加课程名称必须取唯一值的约束条件。ALTERTABLECourseADDUNIQUE(Cname);4.删除基本表删除Student表DROPTABLEStudentCASCADE;5.建立索引在Student表的Sname(姓名)列上建立一个聚簇索引CREATECLUSTERINDEXStusnameONStudent(Sname);为学生-课程数据库中的Student,Course,SC三个表建立索引。CREATEUNIQUEINDEXStusnoON6、Student(Sno);CREATEUNIQUEINDEXCoucnoONCourse(Cno);CREATEUNIQUEINDEXSCnoONSC(SnoASC,CnoDESC);Student表按学号升序建唯一索引Course表按课程号升序建唯一索引SC表按学号升序和课程号降序建唯一索引6.删除索引删除Student表的Stusname索引DROPINDEXStusname;7.单表查询查询全体学生的姓名、学号、所在系。SELECTSname,Sno,SdeptFROMStudent;查询全体学生的详细记录。SELECT*FROMStudent;查全7、体学生的姓名及其出生年份。SELECTSname,2004-Sage/*假定当年的年份为2004年*/FROMStudent;查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名SELECTSname,‘YearofBirth:',2004-Sage,ISLOWER(Sdept)FROMStudent;查询考试成绩有不及格的学生的学号。SELECTDISTINCTSnoFROMSCWHEREGrade<60;指定DISTINCT关键词,去掉表中重复的行查询年龄不在20~23岁之间的学生姓名、系别和年龄ELECTSname,Sdept,SageF8、ROMStudentWHERESageNOTBETWEEN20AND23;查询既不是信息系、数学系,也不是计算机科学系的学生的姓名和性别。SELECTSname,SsexFROMStudentWHERESdeptNOTIN('IS','MA','CS');查询所有姓刘学生的姓名、学号和性别。SELECTSname,Sno,SsexFROMStudentWHERESnameLIKE‘刘%’;查询姓"欧阳"且全名为三个汉字的学生的姓名。SELECTSnameFROMStudentWHERESnameLIKE'欧阳__';查询以"DB_"开头,且倒数第3个字符为9、i的课程的详细情况。SELECT*FROMCourseWHEREC
2、RESTRICT>CASCADE(级联)删除模式的同时把该模式中所有的数据库对象全部删除RESTRICT(限制)如果该模式中定义了下属的数据库对象(如表、视图等),则拒绝该删除语句
3、的执行。当该模式中没有任何下属的对象时才能执行。DROPSCHEMAZHANGCASCADE;删除模式ZHANG同时该模式中定义的表TAB1也被删除3.基本表的创建建立一个“课程”表CourseCREATETABLEStudent(SnoCHAR(9)PRIMARYKEY,/*列级完整性约束条件*/SnameCHAR(20)UNIQUE,/*Sname取唯一值*/SsexCHAR(2),SageSMALLINT,SdeptCHAR(20))建立一个“学生选课”表SCCREATETABLESC(SnoCHAR(9),CnoCHAR(4),GradeSMALL
4、INT,PRIMARYKEY(Sno,Cno),/*主码由两个属性构成,必须作为表级完整性进行定义*/FOREIGNKEY(Sno)REFERENCESStudent(Sno),/*表级完整性约束条件,Sno是外码,被参照表是Student*/FOREIGNKEY(Cno)REFERENCESCourse(Cno)/*表级完整性约束条件,Cno是外码,被参照表是Course*/);3.修改基本表向Student表增加“入学时间”列,其数据类型为日期型。ALTERTABLEStudentADDS_entranceDATE;将年龄的数据类型由字符型(假设原来的
5、数据类型是字符型)改为整数。ALTERTABLEStudentALTERCOLUMNSageINT;增加课程名称必须取唯一值的约束条件。ALTERTABLECourseADDUNIQUE(Cname);4.删除基本表删除Student表DROPTABLEStudentCASCADE;5.建立索引在Student表的Sname(姓名)列上建立一个聚簇索引CREATECLUSTERINDEXStusnameONStudent(Sname);为学生-课程数据库中的Student,Course,SC三个表建立索引。CREATEUNIQUEINDEXStusnoON
6、Student(Sno);CREATEUNIQUEINDEXCoucnoONCourse(Cno);CREATEUNIQUEINDEXSCnoONSC(SnoASC,CnoDESC);Student表按学号升序建唯一索引Course表按课程号升序建唯一索引SC表按学号升序和课程号降序建唯一索引6.删除索引删除Student表的Stusname索引DROPINDEXStusname;7.单表查询查询全体学生的姓名、学号、所在系。SELECTSname,Sno,SdeptFROMStudent;查询全体学生的详细记录。SELECT*FROMStudent;查全
7、体学生的姓名及其出生年份。SELECTSname,2004-Sage/*假定当年的年份为2004年*/FROMStudent;查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名SELECTSname,‘YearofBirth:',2004-Sage,ISLOWER(Sdept)FROMStudent;查询考试成绩有不及格的学生的学号。SELECTDISTINCTSnoFROMSCWHEREGrade<60;指定DISTINCT关键词,去掉表中重复的行查询年龄不在20~23岁之间的学生姓名、系别和年龄ELECTSname,Sdept,SageF
8、ROMStudentWHERESageNOTBETWEEN20AND23;查询既不是信息系、数学系,也不是计算机科学系的学生的姓名和性别。SELECTSname,SsexFROMStudentWHERESdeptNOTIN('IS','MA','CS');查询所有姓刘学生的姓名、学号和性别。SELECTSname,Sno,SsexFROMStudentWHERESnameLIKE‘刘%’;查询姓"欧阳"且全名为三个汉字的学生的姓名。SELECTSnameFROMStudentWHERESnameLIKE'欧阳__';查询以"DB_"开头,且倒数第3个字符为
9、i的课程的详细情况。SELECT*FROMCourseWHEREC
此文档下载收益归作者所有