Oracle11g第二章.ppt
《Oracle11g第二章.ppt》由会员分享,可在线阅读,更多相关《Oracle11g第二章.ppt(44页珍藏版)》请在三一办公上搜索。
1、第二章,SQL语言,SQL语言简介,SQL(Structured Query Language)又称结构化查询语言,是一种在关系型数据库中定义和查询及操纵数据的标准语言,是用户和数据库之间进行交流的接口SQL是IBM公司的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言SQL的前身是SQUARE语言,研制于上世纪70年代,Oracle不久也推出商用的SQL语言。SQL语言结构简洁,功能强大,简单易学,所以自从推出以来,SQL语言得到了广泛的应用。如今无论是像Oracle,Sybase,Informix,SQL server这些大型的数据库管理系统,还是像Visual Fo
2、xporo,PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。,SQL语言分类,数据定义语言(DDL)create,alter,drop数据操作语言(DML)select.insert,update,delete事务控制语言(TCL)commit,savepoint,rollback数据控制语言(DCL)grant,revoke,表的概述,表是最基本的数据库对象,对应于现实世界中的对象表是数据库存储数据的基本单元表按列进行定义,存储若干行数据,表中至少有一列表的列的类型由用户指定关系型数据库的所有操作都围绕表进行的,表和列名的定义规则,长度不能超过30字节必
3、须以字母开头不能使用保留字,如Number,Table,Index等表名(列名)不区分大小写,但如果包括在“”内,则区分大小写在一个表中,列名不能重复(即列名是唯一的)表名在当前数据库必须唯一,Oracle的数据类型,Oracle的数据类型,Oracle的数据类型,Oracle的数据类型,数据定义语言DDL,创建表 1.create table语句的基本格式如下:create table(列级完整性约束条件,列级完整性约束条件,);注意:建表的同时通常还可以定义与该表有关的完整性约束条件,这些完整性约束条件被存入系统的数据字典中,当用户操作表中数据时由RDBMS自动检查该操作是否违背这些完整性
4、约束条件。如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则既可以定义在列级上,也可以定义在表级上。,数据定义语言,表的约束1.非空约束(not null):该字段的值不能为空。语法格式:constraint not null 2.唯一约束(unique):该字段的值不能重复。语法格式:constraint unique(,)3.主键约束(primary key):唯一的确定表中的每一行数据 语法格式:constraint primary key(,)4.检查约束(check):检查约束指表中的某一个列或一组列取值应该满足检查约束指定的条件。语法格式:constraint ch
5、eck(),数据定义语言,表的约束5.缺省约束(default):为字段提供默认值语法格式:constraint default 6.外键约束(foreign key):外键是指引用另一个表中的某个列或某几个列、或本表中另一个列或几个列。语法格式:constraint foreign key()references()on delete cascade|set null注意:on delete/update cascade表示修改或删除时做级联操作 on delete set null 将所有相关记录的外部码字段值设置为NULL,数据定义语言,修改表1.增加列:增加列就是在表中增加一个新列。增
6、加列是最常见的修改表结构的操作。语法格式:alter table add;2.更新列语法格式:alter table modify;3.删除列 语法格式:alter table drop column;,数据定义语言,修改表约束1.非空约束:alter table modify constraint not null|null;2.唯一约束:alter table add constraint unique(,);3.主键约束:alter table add constraint primary key(,);,数据定义语言,修改表约束4.外键约束:alter table add constr
7、aint foreign key()references()on delete cascade|set nullon update cascade;5.检查约束:alter table add constraint check();6.缺省约束:alter table modify default(),数据定义语言,修改表名ALTER TABLE oldTableName RENAME TO newTableName如果是当前用户库的表RENAME oldTableName To newTableName修改列名ALTER TABLE tableName RENAME COLUMN oldCo
8、lumnName TO newColumnName,数据定义语言,删除表使用drop table语句删除表语法格式:drop table 注意:在删除表时,如果该表中的数据被另外表的外键引用,那么必须要先删除外键表,才能删除该表。,数据操作语言,Select语句:用于检索数据库的数据,它是所有SQL语句中语法最复杂、功能也是最强大的SQL语句。单表查询:单表查询是指仅涉及一个表的查询 1.简单查询语句语法格式:select distinct from 主要有以下查询:检索所有列、检索特定列、检索日期列、取消重复行、使用算术表达式、使用列别名、处理NULL、连接字符串,数据操作语言,2.使用wh
9、ere子句语法如下:select distinct from where condition;主要有以下查询:在where条件中使用数字值、字符值、日期值。betweenand操作符、not betweenand不匹配检索、(=,!=,=,!)、比较操作符、like操作符、in操作符、not in 操作符、逻辑操作符(and、or、not)、查询null值。,数据操作语言,3.使用order by子句语法如下:select distinct from where condition(s)order by expr asc|desc;主要有以下查询:升序排序、降序排序、多列排序、非选择列进行排序
10、、列别名排序、列位置编号排序,数据操作语言,4.数据分组:是通过使用group by子句、分组函数以及havnig子句共同实现的。其中group by子句用于指定要分组的列,分组函数则用于显示统计结果,而having子句则用于限制分组显示结果。1)分组函数max:该函数用于取得列或表达式的最大值,它适用于任何数据类型。min:该函数用于取得列或表达式的最小值,它适用于任何数据类型。avg:该函数用于取得列或表达式的平均值,它只适用于数字类型。sum:该函数用于取得列或表达式的总和,它只适用于数字类型。count:该函数用于取得总计行数。,数据操作语言,2)group by和having 语法格
11、式:select column,group_function from where condition group by groupby_expression having group_condition;例如:使用group by进行单列分组:显示每个部门的平均工资和最高工资使用group by进行多列分组:显示每个部门每种岗位的平均工资和最高工资 使用having子句限制分组显示结果:显示平均工资低于2000的部门号、平均工资及最高工资,注意点,分组函数只能出现在选择列、having子句和order by子句如果查询语句中包括group by 和having子句,及order by 子句,
12、则order by 必须放到最后having子句,如果出现必须和group by 同时出现如果查询语句中包括查询列、表达式、分组函数,则查询列和表达式必须出现在group by 子句中当限制分组显示结果时,必须使用having子句,而不是在where子句中使用分组函数,数据操作语言,连接查询:连接查询是指基于两个或两个以上表或视图的查询。相等连接:是指使用相等比较符(=)指定连接条件的连接查询,该种连接查询主要用于检索主从表之间的相关数据。语法格式如下:select table1.column,table2.column from table1,table2 where table1.colu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle11g 第二
链接地址:https://www.31ppt.com/p-6513372.html