资源描述:
《sql语句学习手册实例版》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、SQL语句学习手册实例版表操作例1对于表的教学管理数据库中的表STUDENTS,可以定义如下:CREATETABLESTUDENTS(SNONUMERIC(6,0)NOTNULLSNAMECHAR(8)NOTNULLAGENUMERIC(3,0)SEXCHAR(2)BPLACECHAR(20)PRIMARYKEY(SNO))例2对于表的教学管理数据库中的表ENROLLS,可以定义如下:CREATETABLEENROLLS(SNONUMERIC(6,0)NOTNULLCNOCHAR(4)NOTNULLGRADEINTPRIMARYKEY(SNO
2、,CNO)FOREIGNKEY(SNO)REFERENCESSTUDENTS(SNO)FOREIGNKEY(CNO)REFERENCESCOURSES(CNO)CHECK((GRADEISNULL)OR(GRADEBETWEEN0AND100)))例3根据表的STUDENTS表,建立一个只包含学号、姓名、年龄的女学生表。CREATETABLEGIRLASSELECTSNO,SNAME,AGEFROMSTUDENTSWHERESEX='女'; 例4删除教师表TEACHER。DROPTABLETEACHER例5在教师表中增加住址列。ALTERTA
3、BLETEACHERSADD(ADDRCHAR(50))例6把STUDENTS表中的BPLACE列删除,并且把引用BPLACE列的所有视图和约束也一起删除。ALTERTABLESTUDENTSDROPBPLACECASCADE例7补充定义ENROLLS表的主关键字。ALTERTABLEENROLLSADDPRIMARYKEY(SNO,CNO);视图操作(虚表)例9建立一个只包括教师号、姓名和年龄的视图FACULTY。(在视图定义中不能包含ORDERBY子句)CREATEVIEWFACULTYASSELECTTNO,TNAME,AGEFROMT
4、EACHERS例10从学生表、课程表和选课表中产生一个视图GRADE_TABLE,它包括学生姓名、课程名和成绩。CREATEVIEWGRADE_TABLEASSELECTSNAME,CNAME,GRADEFROMSTUDENTS,COURSES,ENROLLSWHERESTUDENTS.SNO=ENROLLS.SNOANDCOURSES.CNO=ENROLLS.CNO例11删除视图GRADE_TABLEDROPVIEWGRADE_TABLERESTRICT索引操作例12在学生表中按学号建立索引。CREATEUNIQUEINDEXSTONSTU
5、DENTS(SNO,ASC)例13删除按学号所建立的索引。DROPINDEXST数据库模式操作例14创建一个简易教学数据库的数据库模式TEACHING_DB,属主为ZHANG。CREATESCHEMATEACHING_DBAUTHRIZATIONZHANG例15删除简易教学数据库模式TEACHING_DB。((1)选用CASCADE,即当删除数据库模式时,则本数据库模式和其下属的基本表、视图、索引等全部被删除。(2)选用RESTRICT,即本数据库模式下属的基本表、视图、索引等事先已清除,才能删除本数据库模式,否则拒绝删除。)DROPSCHE
6、MATEACHING_DBCASCADE单表操作例16找出3个学分的课程号和课程名。SELECTCNO,CNAMEFROM COURSESWHERE CREDIT=3例17查询年龄大于22岁的学生情况。SELECT*FROMSTUDENTSWHEREAGE>22例18找出籍贯为河北的男生的姓名和年龄。SELECTSNAME,AGEFROM STUDENTSWHERE BPLACE='河北'ANDSEX='男'例19找出年龄在20~23岁之间的学生的学号、姓名和年龄,并按年龄升序排序。(ASC(升序)或DESC(降序)声明排序的方式,缺省为升序
7、。)SELECTSNO,SNAME,AGEFROMSTUDENTSWHEREAGEBETWEEN20AND23ORDERBYAGE例20找出年龄小于23岁、籍贯是湖南或湖北的学生的姓名和性别。(条件比较运算符=、<和逻辑运算符AND(与),此外还可以使用的运算符有:>(大于)、>=(大于等于)、<=(小于等于)、<>(不等于)、NOT(非)、OR(或)等。谓词LIKE只能与字符串联用,常常是“<列名>LIKEpattern”的格式。特殊字符“_”和“%”作为通配符。谓词IN表示指定的属性应与后面的集合(括号中的值集或某个查询子句的结果)中的某
8、个值相匹配,实际上是一系列的OR(或)的缩写。谓词NOTIN表示指定的属性不与后面的集合中的某个值相匹配。谓词BETWEEN是“包含于…之中”的意思。)SELECT