oracle面试程序.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
如何使用Oracle的游标? 1.? oracle中的游标分为显示游标和隐式游标 2.??显示游标是用cursor...is命令定义的游标,它可以对查询语句(select)返回的多条记录进行处理;隐式游标是在执行插入?(insert)、删除(delete)、修改(update)和返回单条记录的查询(select)语句时由PL/SQL自动定义的。 3.?显式游标的操作:打开游标、操作游标、关闭游标;PL/SQL隐式地打开SQL游标,并在它内部处理SQL语句,然后关闭它 Oracle中function和procedure的区别? 可以理解函数是存储过程的一种 函数可以没有参数,但是一定需要一个返回值,存储过程可以没有参数,不需要返回值 两者都可以通过out参数返回值,?如果需要返回多个参数则建议使用存储过程 在sql数据操纵语句中只能调用函数而不能调用存储过程 Oracle的导入导出有几种方式,有何区别? 1.?使用oracle工具?exp/imp 2.?使用plsql相关工具 方法1.?导入/导出的是二进制的数据,?2.plsql导入/导出的是sql语句的文本文件 Oracle中有哪几种文件? 数据文件(一般后缀为.dbf或者.ora),日志文件(后缀名.log),控制文件(后缀名为.ctl) 怎样优化Oracle数据库,有几种方式? 个人理解,数据库性能最关键的因素在于IO,因为操作内存是快速的,但是读写磁盘是速度很慢的,优化数据库最关键的问题在于减少磁盘的IO,就个人理解应该分为物理的和逻辑的优化,物理的是指oracle产品本身的一些优化,逻辑优化是指应用程序级别的优化 物理优化的一些原则: Oracle的运行环境(网络,硬件等) 使用合适的优化器 合理配置oracle实例参数 建立合适的索引(减少IO) 将索引数据和表数据分开在不同的表空间上(降低IO冲突) 建立表分区,将数据分别存储在不同的分区上(以空间换取时间,减少IO) ???逻辑上优化: 可以对表进行逻辑分割,如中国移动用户表,可以根据手机尾数分成10个表,这样对性能会有一定的作用 Sql语句使用占位符语句,并且开发时候必须按照规定编写sql语句(如全部大写,全部小写等)oracle解析语句后会放置到共享池中 如:?select * from Emp where name=???这个语句只会在共享池中有一条,而如果是字符串的话,那就根据不同名字存在不同的语句,所以占位符效率较好 数据库不仅仅是一个存储数据的地方,同样是一个编程的地方,一些耗时的操作,可以通过存储过程等在用户较少的情况下执行,从而错开系统使用的高峰时间,提高数据库性能 尽量不使用*号,如select * from Emp,因为要转化为具体的列名是要查数据字典,比较耗时 选择有效的表名 对于多表连接查询,可能oracle的优化器并不会优化到这个程度,?oracle?中多表查询是根据FROM字句从右到左的数据进行的,那么最好右边的表(也就是基础表)选择数据较少的表,这样排序更快速,如果有link表(多对多中间表),那么将link表放最右边作为基础表,在默认情况下oracle会自动优化,但是如果配置了优化器的情况下,可能不会自动优化,所以平时最好能按照这个方式编写sql Where字句规则 Oracle?中Where字句时从右往左处理的,表之间的连接写在其他条件之前,能过滤掉非常多的数据的条件,放在where的末尾,另外!=符号比较的列将不使用索引,列经过了计算(如变大写等)不会使用索引(需要建立起函数),?is null、is not null等优化器不会使用索引 使用Exits Not Exits?替代?In? Not in 合理使用事务,合理设置事务隔离性 数据库的数据操作比较消耗数据库资源的,尽量使用批量处理,以降低事务操作次数 Oracle中字符串用什么符号链接? Oracle中使用?||?这个符号连接字符串如?‘abc’ || ‘d’ Oracle分区是怎样优化数据库的? Oracle的分区可以分为:列表分区、范围分区、散列分区、复合分区。 1. ?增强可用性:如果表的一个分区由于系统故障而不能使用,表的其余好的分区仍可以使用; 2. ?减少关闭时间:如果系统故障只影响表的一部份分区,那么只有这部份分区需要修复,可能比整个大表修复花的时间更少; ?3. ?维护轻松:如果需要得建表,独产管理每个公区比管理单个大表要轻松得多; ?4.??均衡I/O:可以把表的不同分区分配到不同的磁盘来平衡I/O改善性能; 5.??改善性能:对大表的查询、增加、修改等操作可以分解到表的不同分区来并行执行,可使运行速度更快 6. ?分区对用户透明,最终用户感觉不到分区的存在。 Oracle是怎样分页的? Oracle

文档评论(0)

ddf55855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档