ORACLE数据库简介学习课件_第1页
ORACLE数据库简介学习课件_第2页
ORACLE数据库简介学习课件_第3页
ORACLE数据库简介学习课件_第4页
ORACLE数据库简介学习课件_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ORACLE数据库简介

当前主流数据库及其简介

ORACLE SYSBASE INFORMIX SQLSERVER DB2

关系数据库概念简介

ORACLE数据库结构关系数据库简介关系数据库元素实体和联系键(key)数据完整性SQL语言关系数据库逻辑结构实体和联系实体(Entity):客观存在的并可相互区分的“事物”实体通常成为表,表由行和列组成,每一行描述实体的一个示例,每一列描述实体的一个特征实体在逻辑数据库设计时被确定联系(Relation):实体之间存在的对应或连接关系一对一关系(1:1):表中的一行与相关表中的零行或多行相关一对多关系(1:n):表中的一行与相关表中的零行或多行相关多对多关系(n:m):表中的多行与相关表中的零行或多行相关联系的实现:在关系数据库设计中,联系通常利用逻辑键来实现。数据完整性(DataIntergrity)实体完整性关系中的元组在组成主键的属性上不能有空值,也不能有重复值,否则就不能起到唯一标识元组的作用域完整性关系中的属性取值的正确性限制,包括数据类型、精度、取值范围、是否允许空值等参照完整性反映了实体之间存在的某种约束条件。要求外键的值不允许参照不存在的主键的值,它使主键和外键之间的值保持一致或相容,来维护数据库数据的一致性或相容性业务规则一般包括数据完整性、参照完整性、遵循组织的任一其他需求,以便保证业务的正确运行键(key)主键超键(SuperKey):在一个关系中能唯一表示元组的属性集侯选键(CandidateKey):一个属性集能唯一标识元组而又不含多余的属性主键(PrimaryKey):被选用的侯选键外键公共键(CommonKey):两个关系中具有相容(或相同)的属性或属性组外键(ForeignKey):如果公共键是其中一个关系的主键,那么这个公共键在另一个关系中称为外键组合键组合键(CompositKey):由两个或两个以上属性(列)组成的键数据完整性(DataIntergrity)数据库对象对象描述Table表,存储数据的基本单元,由行、列组成。View视图,虚拟表,由基于一个表或多个数据库表的一个查询定义。Sequence序列,序列生成器给表中的记录生成序列数字。Index索引,使用指针加快记录访问速度。Synonym同义名,给数据库对象起另一个名字,以方便参照。SQL语言(StructureQueryLanguage)

数据操纵语言(DML)SELECTDELETEINSERTUPDATE数据定义语言(DDL)CREATE定义数据库实体结构ALTER修改数据库实体结构DROP删除数据库实体GRANT/REVOKE数据库对象的权限管理数据控制语言(DCL)COMMIT/ROLLBACKSAVEPOINTSELECT:作用: 根据WHERE条件从表,视图,SNAPSHOT中获取数据。语法:select distinct(alldefault)column_name(expt,*)from table(view,snapshot,subquery[selectlist])@dblinkwhere (startwithcondition)(connectbycondition) groupbyexpr(havingcondition)union(unionall,minus,intersect) orderby(expr,position,c_alias)asc(desc) forupdateof(table,viewsnapshot)columnnowaitUPDATE:作用: 该语句用于修改表或基表的VIEW中的已存在的数据,如果要执 行该语句必须拥有UPDATEPRIVILEGE。语法:update table(view,snapshot)@dblinkt_aliasset (column_arraay)=subquery2orcolumn=valueor=subquery3where conditionINSERT:作用: 该语句用于插入单条或一组记录到相应的表和基于单表的VIEW,

如果要执行该语句必须拥有INSERTPRIVILEGE。语法:insertinto schema.table(vieworsubquery1)@dblink(column_name)values (column_values)(orsubquery2)(asselect……from……)DELETE:作用: 该命令用于从表或基于单表的VIEW中删除一些记录,如果要 执行该语句必须拥有DELETEPRIVELEGE。语法:delete[from]table(view)@dblinkaliaswhere conditionCOMMIT:ROLLBACK:一、Sql命令基础

(数据操纵语言(DML)

)1、SQL命令基础-基本的SELECT命令SELECT{*,cloumn[alias],…}FROMtables;SELECT识别什么列FROM识别哪个表算术表达式对NUMBER和DATE型数据可用算术运算创建表达式*乘法/除法+加法-减法使用列的别名Selectenameasname,salsalaryfromemp;连结操作将列或字符与其它列连结用双竖条表示(||)产生的结果列是一个字符表达式重记录缺省条件下查询显示所有行,包括重行Selectserv_idfromservwhereacc_nbr=‘3069097’;删除重行使用DISTINCT关键字可删除重行Selectdistinctserv_idfromservwhereacc_nbr=‘3069097’;显示表结构DESCRIBEtablename;2、限定和排序数据限定所选择的数据使用where子句限定返回的记录SELECTcolumnFROMtablenameWherecondition(s);Where子句在from子句后字符串和日期-字符串和日期要用单引号扩起来-字符串是大小写敏感的,日期值是格式敏感的-缺省的日期格式是‘DD-MON-YY’比较运算符=等于>大于>=大于等于<小于<=小于等于<>不等于其它的比较运算符BETWEENAND两值之间(包含)IN(list)匹配列出的值LIKE匹配一个字符模式%表示零或多个字符_表示一个字符ISNULL是空值逻辑运算符AND如果组合条件是TRUE,返回TRUEOR如果组合的条件之一是TRUE,返回TRUENOT如果下面的条件是FALSE,返回TRUE优先级规则所有比较运算符

NOTANDOR使用括号提高优先级ORDERBY子句Orderby子句将记录排序ASC:升序(缺省)DESC:降序ORDERBY子句在SELECT指令的最后使用别名的列排序多个列排序常用SQL函数字符函数:大小写转换函数

LOWER:将字符转换成小写UPPER:将字符转换成大写INITCAP:将每个单词的第一个字母转换成大写,其它小写。字符处理函数

CONCAT(‘Good’,’String’结果GoodString

SUBSTR(‘String”,1,3)结果Str

LENGTH(‘String’)结果6INSTR(‘Stri

ng’,’r’)结果3LTRIM:把某一CHAR型数据的左边空格删除RTRIM:把某一CHAR型数据的右边空格删除

数字函数

ROUND4舍5入round(45.926,2)45.93TRUNC截断

trunc(45.926,245.92MOD取余数

mod(1600,300)100转换函数:TO_CHAR:把某一数据类型转换成CHAR型TO_DATE:把某一数据类型转换成DATE型,须考虑特定的数据格式TO_NUMBER:把某一数据类型转换成NUMBER型3、从多个表中显示数据使用等值连接selecta.serv_id,,a.chargefrom

acct_itema,

acct_item_typeb

wherea.acct_item_type_id=b.acct_item_type_id

anda.serv_idin(select

serv_idfrom

serv

where

acc_nbr='3061818'andstate='F0A')

anda.billing_cycle_id=161使用别名简化连接多个表selectc.acc_nbr,,a.chargefrom

acct_itema,

acct_item_typeb,

servc

wherea.acct_item_type_id=b.acct_item_type_id

anda.serv_id=c.serv_id

andc.acc_nbr='3061818'andc.state='F0A'

anda.billing_cycle_id=1614、使用组函数合计数据什么是分组函数分组函数运算每一组记录,每一组返回一个结果。这些组可能是整表,也可能是由一个表分成的多个组。分组函数类型

AVGCOUNTSUMMAXMIN

产生数据组GROUPBY子句Selectcount(*),substr(ktzr_hm,1,3)fromktzrWheresubstr(ktzr_hm,1,1)=‘2’Groupbysubstr(ktzr_hm,1,3);限定组的结果HAVING子句-记录被分组-应用组函数-匹配HAVING子名的组被显示Selectcount(*),substr(ktzr_hm,1,3)fromktzrWheresubstr(ktzr_hm,1,1)=‘2’Groupbysubstr(ktzr_hm,1,3)Havingcount(*)>10000;5、使用子查询子查询:在一个select中嵌入另一个查询语句Select

serv_id,acc_nbr

from

serv

Where

substr(acc_nbr,1,1)='2'

and

serv_idin(

select

serv_idfromacct_item

whereacct_item_type_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论