资源描述:
《数据库原理与应用chp3SQL语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库原理与应用刘伟法(liuwf@cslg.cn)常熟理工学院计算机学院第3章SQL语言—关系数据库标准语言SQL概述SQL的基本数据类型SQL的数据定义(create,alter,drop)SQL的数据操纵(insert,update,delete)SQL的数据查询(select)SQL的数据控制(grant,revoke)2.1SQL概述1、SQL语言标准的发展历程SQL-86SQL-89SQL-92(SQL1)SQL-99(SQL2)SQL-2003(SQL3)2、SQL的特点一体化(功能强大)数据查询、数据操纵、数据定义、数据控制于一体,风格统一高度非过程化只需提出做什么,无需
2、指明怎么做面向集合的操作方式能以多种方式使用既可以独立使用,也可以嵌入到其他高级语言简洁(语法简单):9个动词,类似英语语句2.1SQL概述(续)2.1SQL概述(续)3、SQL语言基本概念基本表独立存在的表,一个关系对应一个基本表。视图虚表。是从一个或几个基本表导出的表。视图中存放的仅仅是定义,而不是数据,数据仍在基本表中。索引加速查询的速度而提供的数据结构2.2SQLServer的数据类型1、数值型int4个字节smallint2个字节tinyint1个字节numeric小数decimal小数float浮点数2.2SQLServer的数据类型(续)2、字符串型char固定长度(1-8
3、000)varchar可变长度(1-8000)text可存储231-1个字符的文本image可存储多种格式的文件2.2SQLServer的数据类型(续)3、日期时间型datetime8个字节(毫秒)smalldatetime4个字节(分钟)4、货币型money8个字节smallmoney4个字节学生-课程数据库学生表:Student(Sno,Sname,Ssex,Sage,Sdept)学生-课程数据库课程表:Course(Cno,Cname,Cpno,Credit)学生-课程数据库选课表:SC(Sno,Cno,Grade)2.3数据定义操作对象创建删除修改模式CREATESCHEMADR
4、OPSCHEMA表CREATETABLEDROPTABLEALTERTABLE视图CREATEVIEWDROPVIEW索引CREATEINDEXDROPINDEX数据库CREATEDATABASEDROPDATABASEALTERDATABASE2.3数据定义(续)1、数据库的定义与删除数据库定义CREATEDATABASEdatabase_name创建一个数据库及存储该数据库的文件。每个数据库至少包括两个文件:主数据文件和事务日志文件。2.3数据定义(续)1、数据库的定义与修改与删除数据库修改ALTERDATABASEdatabase_name。。。修改数据库。数据库删除DROP
5、DATABASEdatabase_name删除数据库所有文件及磁盘文件。2、模式的定义与删除模式定义CREATESCHEMAschema_nameAUTHORIZATIONowner创建一个模式,并指明模式的所有者。可以在模式中建立其他数据对象,如基本表,视图,索引等。2.3数据定义(续)2、模式的定义与删除模式删除DROPSCHEMAschema_name6、RESTRICT>删除模式。CASCADE表示级联删除,删除模式的同时删除模式下的数据库对象。RESTRICT拒绝删除已定义了数据库对象的模式。2.3数据定义(续)2.3数据定义(续)3、基本表的定义、删除及修改
7、基本表定义CREATETABLE<表名>(<列名><数据类型>[列级约束],<列名><数据类型>[列级约束],……[,表级完整性约束定义])CREATETABLEStudent(Snochar(7)PRIMARYKEY,Snamechar(10)UNIQUE,Ssexchar(2)CHECK(Ssex='男'orSsex='女'),SagetinyintCHECK(Sage>=15andSage<=45),Sdeptchar(20)DEFAULT'计算机系')2.3数据定义(续)CREATETABLECourse(Cnochar(4)PRIMARYKEY,Cnamevarchar(40
8、)NOTNULL,Cpnochar(4),Ccredittinyint,FOREIGNKEY(Cpno)REFERENCESCourse(Cno))2.3数据定义(续)表级完整性约束条件,列Cpno中数据必须参照列Cno中的数据。CREATETABLESC(Snochar(7),Cnochar(4),Gradenumeric(5,2),PRIMARYKEY(Sno,Cno),FOREIGNKEY(Cno)REFERENCESCour