- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
oracle章节总结
第01章 DBMS发展史
《项目(章节)补充》
1、数据库设计步骤:设计ER图,根据ER图生成数据库。在实际项目中经常使用PowerDesigner来进行数据库建模(要求会使用PD创建物理模型、设计表、视图和存储过程,会生成数据库;也可以根据数据库现有的表使用ODBC逆向生成PD数据模型)。
第02章 表格及约束
《项目(章节)补充》
1、建立外键约束时,建议:被引用的主表的字段必须是主表的主键,且与子表的列的数据类型必须一致。
2、通过语句添加主键时必须保证该字段为非空字段。唯一约束可以为空
3、Char的效率要高于varchar数据类型,例如定义如下字段:A char(10),假设存储一个ABC的字符串,那么剩下的七个字节会自动用空格填充,而varchar则会将剩下的七个字节去除,这样就会增加额外的操作而降低效率。所以char是以空间换效率。
4、unicode含义:在windows编码中一个汉字占两个字节,一个字母占一个字节,如果使用了unicode则一个字母也占两个字节和汉字所占长度一致。
5、在oracle中,增删改查操作对于日期类型要做特殊处理而不能直接以字符串做处理,例如对日期类型要做如下处理:insert into tbl_studentinfo (stubirth)values(to_date(1988-12-11,yyyy-mm-dd)),而在其他的数据库中,例如db2、mysql等可以直接将日期作为字符串插入数据库。
6、在实际的项目开发中,经常将多对多关系的表拆分成两个一对多的关系,使用关系表来建立关联。在数据库建模的过程中,外键的含义是子表对主表的引用。
第03章 表格操作及事务处理
《项目(章节)补充》
1、带外键关联的主从表操作方式:
update:如果主表中信息在子表中关联存在则该关联字段不可以修改;如果不存在则可以修改。如果子表中的关联字段在修改过后在主表中可以找到关联信息并且不违反子表的主键约束则可以修改;反之则不可修改。
delete:删除时应该先删除子表再删除主表。
insert:插入时应该先插入主表再插入子表。
2、物理删除和逻辑删除:物理删除指使用delete from方式删除数据,删除后数据在表中不存在;逻辑删除是指在表中建立一个标志列,当删除一行时只是对这列做update,例如使用1表示未删除,使用0表示删除。这样在查询的时候,可以使用where子句来判断是否显示逻辑删除的列。
第04章 单表检索
《项目(章节)补充》
1、单表查询结构如下:
1) SELECT [DISTINCT | UNIQUE] (*, 字段名 [AS 别名], …)
2) FROM table name [AS allies]
3) [WHERE condition]
4) [ORDER BY]
执行顺序如下:2)-- 3)-- 1)-- 4)
2、别名问题,在oracle中对象的别名又叫同义词。oracle中对于表的别名不能使用as,而列的别名可以使用as。按照单表查询结构顺序别名可以用于排序。
3、distinct用于对单列或多列的组合进行重复数据过滤,如:select distinct am from test 对a和b列数据的组合进行过滤。
4、查询效率问题:select * from test
大数据量:例如在1000万条记录在这种场景下进行这样的查询无论是数据的查询还是传输都会造成系统极大的负担。改进方法:分页
列数据过大:例如test表中某列为blob类型,用于存储高清照片信息,那么使用select * 这种罗列出所有列的做法也会造成数据量过大。改进方法:选取需要的列信息,而对于不需要的列不要通过select选取出来 select a from test
索引失效:索引的作用是为了提高通过某列的限定行查询提高查询效率,但是有一些情况下会造成索引失效,例如使用like % 进行字符串的模糊匹配;使用in或not in关键字等。
5、oracle中的 / 运算符不是整除。
6、oracle中的简单分页sql:
select * from
(select rownum as rn,tmp.* from tbl_studentinfo tmp)
where rn between 3 and 6;
第05章 数据库内置函数
《项目(章节)补充》
1、函数和过程的区别(function和procedure):函数有返回值;过程是对业务的处理没有返回值。
2、case when语句的补充用法:
select stuno,classno,
case
您可能关注的文档
最近下载
- 风电项目植被恢复工程投标方案(技术方案).docx
- 【公开课】生态系统的能量流动课件高二上学期生物人教版选择性必修2.pptx VIP
- 2024-2025学年度甘肃省合作市中考数学真题分类(一次函数)汇编专项测试练习题(解析版).docx
- 2025年成都高新区面向社会公开招聘员额教师(三组学校)(201人)笔试备考试题及答案解析.docx
- 如何上好低年级语文课.docx
- 20S517- 排水管道出水口.pdf
- 新人教版地理七年级下册《东南亚》ppt课件.pptx
- 小升初语文四大名著知识点汇总.pdf VIP
- (精选)中国古代教育课件.ppt
- 2024年卫星互联网行业分析报告:“天地一体”手机直连卫星加速演进.pdf
文档评论(0)