软考数据库系统工程师知识点讲解1
1、SQL概述SQL的英语名称是结构查询语言(StructuredQueryLanguage) 实际上它的功能包括查询(Query)操纵(Manipulation)定义(Definition)和控制(Control) 四个方面是一个综合的通用的功能极强的关系数据库语言SQL支持数据库的三级模式结构
2、SQL的数据定义功能SQL的数据定义功能包括三部分: 定义基本表定义视图和定义索引它们是:CREATETABLECREATEVIEWCREATEINDEXDROPTABLEDROPVIEWDROPINDEXSQL的数据定义功能可用于定义和修改模式(如基本表)定义外模式(如视图)和内模式(如索引)
3、基本表的定义与删除 定义基本表的语句格式为: CREATETABLE表名(列名类型[NOTNULL] [列名类型[NOTNULL]]…) [其他参数]; 其中任选项其它参数是与物理存储有关的参数根据具体系统的不同而不同删除基本表的语句为ROPTABLE表名;删除索引的语句为ROPINDEX索引名;删除索引的同时把有关索引的描述也从数据字典中删去但表的内涵仍存在且其数据外延内容不变把一个基本表的定义连同表上所有的记录索引以及由此基本表导出的所有视图全部都删除并释放相应的存储空间
4、索引的建立与删除 对一个基本表可以劐聂赞陶根据应用环境的需要建立若干索引以提供多种存取方式通常索引的建立和删除由DBA或表的主人(即建立表的人)负责用户不必也不能在存取数据时选择索引存胃申赜驵取路径的选择由系统自动进行索引的描述存放在数据字典中建立索引的语句格式为: CREATE[UNIQUE]INDEX索引名ON基本表名(列名[次序][列名[次序]]…)[其他参数];这里的任选项———其他参数是与物理存储有关的参数索引可以建在一列或几列上圆括号内是索引列的顺序说明表其中的任选项———次序指定了索引值排序的次序可取ASC(升序)或DESC(降序)缺省值为升序UNIQUE表示每一索引值只对应唯一的数据记录
5、SQL的数据操纵功能 SQL的数据操纵功能包括SELECTINSER哌囿亡噱TDELETE和UPDATE四个语句即检索和更新(包括增删改)两部分工能检索就是查询 SQL更新傥态尬锪语句SQL的更新语句 包括修改删除和插入三类语句 ①修改(UPDATE)(亦称为更新) 修改语句的一般格式为: UPDATE表名 SET字段=表达式[字段=表达式]… [WHERE谓词]; 修改指定表中满足谓词(或条件)的元组把这些元组按SET子句中的表达式修改相应属性或字段上的值 ②删除(DELETE) 删除语句一般格式为: DELETEFROM表名 [WHERE谓词]; 从指定表中删除满足谓词的那些记录没有WHERE子句时表示删去此表中的全部记录但此表的定义仍在数据字典中只是一个空表DELETE只对表外延操作不对内涵操作 ③插入(INSERT)插入语句的一般格式为: INSERTINTO表名[(字段名[字段名]…)] valueS(常量[常量]…); 或 INSERT INTO表名[(字段名[字段名]…)] 子查询; 第一种格式把一个新记录插入指定的表中第二种格式把子查询的结果插入表中若表中有些字段在插入语句中没有出现则这些字段上的值取空值NULL当然在表定义中说明了NOTNULL的字段在插入时不能取NULL若插入语句中没有指出字段名则新记录必须在每个字段上均有值