现在位置: 首页 > 数据库 > 文章
2016年06月03日 数据库 ⁄ 共 6119字 ⁄ 阅读 886 次
【对象信息】 查看表:user_tables、all_tables、dba_tables 查看表字段:user_tab_columns、all_ tab_columns、dba_tab_columns 查看表注释:user_ tab_comments 、all_tab_comments、dba_tab_comments 查看字段注释:user_col_comments、all_col_comments、dba_col_comments 查看索引信息:user_indexes、all_indexes、dba_indexes 查看索引所在字段:user_ind_columns、all_ind_columns、dba_ind_columns 查看约束信息:user...
阅读全文
2016年05月20日 数据库 ⁄ 共 752字 ⁄ 阅读 947 次
新建三个存储过程,分别使用动态SQL、绑定变量、静态SQL三种编程方式,然后进行实验比较。 【创建存储过程】 Oracle PL/SQL --动态SQL create or replace procedure proc1 as begin for i in 1 .. 100000 loop execute immediate 'insert into t values (' || i || ')'; commit; end loop; end proc1; --动态SQL绑定变量 create or replace procedure proc2 as begin f...
阅读全文
2016年05月19日 数据库 ⁄ 共 818字 ⁄ 阅读 802 次
【不负责总结】 1、regexp_like功能强大,但效率比like要差; 2、若使用like的字段上无索引,且匹配字符串前后都有%,则instr效率高; 3、若使用like的字段上有索引,且匹配字符串前后都有%,若仅操作索引字段则like效率高,若有其他字段则instr效率高,可能的原因是仅操作索引字段不会全表扫描而是采用全索引扫描; 4、若使用like的字段上有索引,且仅匹配字符串结尾有%,则like效率高,因为like使用到了索引,而instr会造成索...
阅读全文
2016年04月21日 数据库 ⁄ 共 2057字 ⁄ 阅读 1,484 次
最近需要从A库将数据导到B库,A库使用的是Oracle 10g,B库使用的是Oracle 11g,本地未安装数据库服务。 【EXP导出失败】 最开始想使用EXP导出数据,结果在使用11g导出10g数据时会报错“EXP-00008: 遇到 ORACLE 错误 904”。错误原因是,Oracle只向下兼容,也就是必须使用10g及以前版本才能导出。为导数据,将本地数据库更换或在其他电脑新装10g的时间成本较高,且可能有未知困难(WIN7操作系统和Oracle 10g数据库之间不兼容),故...
阅读全文
2016年04月17日 数据库 ⁄ 共 1722字 ⁄ 阅读 718 次
【游标定义】 SQL游标是一种能从包含多条记录的结果集中每次提取一条记录的机制,是系统为用户分配的内存中一处数据缓冲区,用于临时存储从数据库中提取的数据块或指向数据行存储位置的指针。 为什么使用游标? 1)数据处理需要,SELECT语句返回多条记录,不可用SELECT INTO将数据写入变量,此时需要用到游标,方便对数据进行逐条处理。 2)提升性能,游标会将数据提取到内存中,这样在使用时就可避免频繁请求数据库。然而,若...
阅读全文
2016年04月16日 数据库 ⁄ 共 3268字 ⁄ 阅读 1,643 次
【动态SQL定义】 动态SQL是指在PL/SQL块中,可以根据不同参数拼接不同的SQL字符串,即执行前不能确定该SQL是什么(如表名、字段名或条件值未知)。 【动态SQL与静态SQL区别】 1)静态SQL是确定的,在执行前已经完成编译(随PL/SQL块一起完成了编译),执行时数据库直接执行编译好的SQL;而动态SQL是不确定的,是在程序运行时才编译并执行(不随PL/SQL块编译时编译)。 2)静态SQL一次编译,多次调用,使用相同的执行计划。动态S...
阅读全文
2016年04月15日 数据库 ⁄ 共 1676字 ⁄ 阅读 1,291 次
偶尔在网上看到的,感觉挺不错,来指引自己学习。 1、sql与pl/sql学习 作为oracle的基本功,需要大家对sql和plsql非常的熟悉。特别是sql里面的多表连接、子查询、各种新版本的函数,以及plsql里面的所有语法,建议大家拿出足够的时间来研究这两块。不要认为这是开发人员的工作,它也是DBA的重要工作,而且对DBA的要求更高,你不但能看懂,还要能够找出问题。学些这方面知识的要点就是:多练、多思考。 2、Oracle管理(体系结构...
阅读全文
2016年04月12日 数据库 ⁄ 共 2288字 ⁄ 阅读 745 次
Oracle调优主要有三个领域:一是应用程序,主要针对SQL语句;二是实例,主要针对内存、数据结构和实例配置等;三是操作系统交互,主要针对I/O、参数设置等。 性能调优的目的,一方面是想提升SQL语句执行效率减少执行时间,另一方面是降低资源消耗,如CPU消耗、内存消耗和I/O消耗。降低CPU消耗主要是减少不必要的计算,如排序操作(如order by)、对比操作(如distinct)等,降低I/O消耗和内存消耗主要是减少不必要的表扫描。 【...
阅读全文
2016年04月10日 数据库 ⁄ 共 710字 ⁄ 阅读 559 次
【项目支撑文件】 WEB项目支撑时,一般应有以下4类脚本文件: 1)创建表空间、用户及授权的脚本; 2)创建表、约束、索引、序列等对象的脚本; 3)创建过程、函数、包、JOB的脚本; 4)初始化数据的脚本; 【注释】 Oracle两种注释方式,单行注释“--注释内容”和多行注释/*注释内容*/。 1)存储过程、函数、触发器开头必须有多行注释解决代码,必要信息如下: /* Description: Author: Date: Version: Description: Author...
阅读全文
2016年04月10日 数据库 ⁄ 共 807字 ⁄ 阅读 563 次
【命名规范化优点】 规范化的命名有助于提升开发效率,有利于保障工作的顺利交接。 【基本规则】 1)对象以具有实际意义的多个英文单词组合命名,单词之间使用下划线分割,下划线一般不超过4个,即英文单词最多不超过5个; 2)一般对象总长不超过30个字符,字段名不超15个字符,数据库名不超过8个字符,只能使用英文字母、数字和下划线命名,若表名过长,则主外键等对象可采用表名简写命名; 3)若英文单词较长,则可适当简写,...
阅读全文