数据库oraclePL/SQL
文章平均质量分 72
m13666368773
这个作者很懒,什么都没留下…
展开
-
oracle的timestamp类型使用
我们都知道date和timestamp都是对日期和时间的表示,只是两种类型的精确度不同,前者精确到秒,后者精确到小数秒(fractional_seconds_precision),可以是 0 to 9,缺省是6。但是对date类型的运算很简单,有很多函数可用来处理;而两个ti原创 2011-08-24 17:28:28 · 2281 阅读 · 0 评论 -
Oracle SQL语句优化技术分析
操作符优化 IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。 但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层的表记录,如果转换成功则直接采用多个表的连原创 2011-12-31 16:51:27 · 1616 阅读 · 1 评论 -
在java中使用oracle绑定变量
为什么要使用绑定变量:在JAVA中的SQL 语句的编写方面,没有使用ORACLE 绑定变量,很大程度上降低了数据库的性能,表现在两个方面:1、SQL语句硬分析(Hard Parse)太多,严重消耗CPU资源,延长了SQL语句总的执行时间。SQL语句的执行过程分几个步骤:语法检查、分析、执行、返回结果。其中分析又分为硬分析(Hard Parse)和软分析(Soft Parse原创 2012-02-06 17:01:04 · 6857 阅读 · 0 评论 -
优化SQL查询:如何写出高性能SQL语句
1、 首先要搞明白什么叫执行计划?执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条记录,那查询优化器会选择“索引查找”方式,如果该表进行了归档,当前只剩下5000条记录了,那查询优化器就会改变方案,采用 “全表扫描”方式。可见,执行计划并不是固定的,它是“个性化的”。产生一个原创 2011-12-31 16:49:53 · 1391 阅读 · 0 评论 -
[ORACLE] SQL语句的优化方法
1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=’SCOTT’;2. /*+FIRST_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗原创 2011-12-31 16:50:43 · 1356 阅读 · 0 评论 -
SQL语句优化方法
1.1 注释使用在语句中多写注释,注释不影响SQL语句的执行效率。增加代码的可读性。1.2 对于事务的使用尽量使事务处理达到最短,如果事务太长最好按功能将事务分开执行(如:可以让用户在界面上多几步操作)。事务太长很容易造成数据库阻塞,用户操作速度变慢或死机情况。1.3 对于与数据库的交互尽量减少与数据库的交互次数。如果在前端程序写有循球访问数据库操作,原创 2011-12-31 16:53:55 · 6996 阅读 · 4 评论 -
Oracle读书摘录1---为什么要书写绑定变量的SQL语句
是否使用绑定变量这是导致Oracle性能问题的一个主要原因,也是阻碍可扩缩性的一个重要因素。Oracle 将已解析、已编译的SQL 连同其他内容存储在共享池(shared pool)中,这是系统全局区(SystemGlobal Area ,SGA)中一个非常重要的共享内存结构。这个结构能完成“平滑”操作,但有一个前提,要求开发人员在大多数情况下都会使用绑定变量。如果你确实想原创 2012-02-08 09:50:03 · 2524 阅读 · 0 评论 -
Oracle数据库系统使用总结的几条经验分享
例如,下面这条命令执行起来很慢 以下是代码片段: select a.empno from emp a where a.empno not in (select empno from emp1 where job=′SALE′); 倘若利用外部联接,改写命令如下: 以下是代码片段: select a.empno from emp a ,emp1 b where原创 2012-02-10 21:24:17 · 1508 阅读 · 0 评论 -
Oracle sql 性能优化调整 .
Oracle sql 性能优化调整 1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,F原创 2012-04-10 16:05:23 · 2298 阅读 · 1 评论 -
Oracle与MySQL的几点区别
Oracle数据库与MySQL数据库的区别是本文我们主要介绍的内容,希望能够对您有所帮助。1.组函数用法规则mysql中组函数在select语句中可以随意使用,但在oracle中如果查询语句中有组函数,那其他列名必须是组函数处理过的,或者是group by子句中的列否则报错eg:select name,count(money) from user;这个放在mysql中没有问题在or原创 2012-04-10 16:02:38 · 1360 阅读 · 1 评论 -
Oracle与MySQL的几点区别
Oracle数据库与MySQL数据库的区别是本文我们主要介绍的内容,希望能够对您有所帮助。1.组函数用法规则mysql中组函数在select语句中可以随意使用,但在oracle中如果查询语句中有组函数,那其他列名必须是组函数处理过的,或者是group by子句中的列否则报错eg:select name,count(money) from user;这个放在mysql中没有问题在or原创 2012-05-29 11:12:41 · 1594 阅读 · 2 评论 -
Oracle复杂查询
1:列出所有员工的姓名,部门名称,和工资select a1.ename,a1.sal,a2.dname from emp a1,dept a2 where a1.deptno = a2.deptno;2:列出所有部门的详细信息和部门人数select a2.deptno,a2.dname,a2.loc,count(a1.empno) from emp a1,dept a2 where a原创 2012-05-21 09:22:41 · 1894 阅读 · 1 评论 -
数据库设计原则
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单据对应多个实体,或多张原始单据对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基原创 2012-09-04 11:12:48 · 2613 阅读 · 2 评论 -
clob转换成String
方法一: public final static String clob2String(CLOB clob) { if (clob ==null ) { return ; } StringBuffer sb = new StringBuffer(65535);//64K Reader clobStream =原创 2012-02-06 11:45:09 · 2571 阅读 · 0 评论 -
Oracle常见问题与解答
Oracle常见问题与解答1. Oracle安装完成后的初始口令? internal/oracle sys/change_on_install system/manager scott/tiger sysman/oem_temp2. ORACLE9IAS WEB CACHE的初始默认用户和密码? administrator/admin原创 2012-02-06 11:19:55 · 1901 阅读 · 0 评论 -
数据库中的Date,DateTime和TimeStamp类型
数据库中的Date,DateTime和TimeStamp类型2008-01-18 09:37:02.0 来源:赛迪网 关键词: Date DateTime TimeStamp 类型 AM原创 2011-08-24 17:27:23 · 1135 阅读 · 0 评论 -
PLSQL数据库创建表空间.txt
创建表空间表空间: CREATE SMALLFILE TABLESPACE LISCNPC2 DATAFILE 'D:\oracle\bus' SIZE 10MAUTOEXTEND ON NEXT 10M MAXSIZE 120M LOGGING EXTENT M原创 2011-08-24 16:12:04 · 957 阅读 · 0 评论 -
ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法
早上同事用PL/SQL连接虚拟机中的Oracle数据库,发现又报了“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误,帮其解决后,发现很多人遇到过这样的问题,因此写着这里。也许你没有遇到过,原因如下:你oracle安装成功后,一直未停止数据库(即数据库是启动的),客户端配置成功后,应该一直不会有什么问题。而一旦你和我同事一样,有时把Oracle安装在虚拟机中,原创 2011-08-22 16:38:20 · 1771 阅读 · 0 评论 -
PL\SQL创建表空间+导入导出+listener.ora文件+tnsnames.ora文件
创建表空间表空间: CREATE SMALLFILE TABLESPACE LISCNPC DATAFILE 'D:\oracle\bus' SIZE 10MAUTOEXTEND ON NEXT 10M MAXSIZE 120M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;用户语句:create原创 2011-08-25 10:16:42 · 1956 阅读 · 0 评论 -
oracle中的exists 和not exists 用法详解
exists表示()内子查询语句返回结果不为空说明where条件成立就会执行主sql语句,如果为空就表示where条件不成立,sql语句就不会执行。not exists和exists相反,子查询语句结果为空,则表示where条件成立,执行sql语句。负责不执行。之前在学oracle数据库的时候,接触过exists,做过几个简单的例子,,如1.如果部门名称中含有字母A,则查询所有员工信息(使原创 2011-11-24 11:05:37 · 34983 阅读 · 0 评论 -
oracle创建表空间
创建表空间表空间: CREATE SMALLFILE TABLESPACE LISCNPC2 DATAFILE 'D:\oracle\bus' SIZE 10MAUTOEXTEND ON NEXT 10M MAXSIZE 120M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;用户语句:creat原创 2011-12-15 10:40:13 · 1022 阅读 · 0 评论 -
如何在oracle中导入导出dmp数据库文件
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于 在oracle 8i 中 安装目录\o原创 2012-01-06 17:19:50 · 1690 阅读 · 0 评论 -
count(*)与count(1)的区别有多大?
数据库表的记录数为:SQL> select count(*) from table_name t;COUNT(*)---------- 68731、使用count(*)的统计结果:SQL> alter session set nls_language = "American";Session altered.SQL> set tim原创 2012-01-09 14:41:37 · 7593 阅读 · 2 评论 -
Oracle数据库实现获取前几条数据的方法
如何在Oracle数据库中实现获取前几条数据的方法呢?就是类似SQL语句中的SELECT TOP N的方法。本文将告诉您答案,举例说明了哟!1.在Oracle中实现SELECT TOP N : 由于ORACLE不支持SELECT TOP语句,所以在ORACLE中经常是用ORDER BY跟ROWNUM的组合来实现SELECT TOP N的查询。 简单地说,实现方法如下所示:原创 2012-01-12 11:45:29 · 1738 阅读 · 1 评论 -
ora-01033:oracle initialization or shutdown in progress 解决方法
今天研究Oracle遇到了这个问题ora-01033:oracle initialization or shutdown in progress,经过分析研究终于解决了,写下来纪念一下。我的库是oracle 9i,具体就是90的。一、首先:问题的产生原因,出现这个错误是因为我将oracle\oradata\oradb下的一个文件误删除掉后出现的。二、现象:SQL*Plus无法连接,原创 2012-02-01 14:48:20 · 1473 阅读 · 0 评论 -
JDBC连接ORACLE
一、本地通过JDBC获得Oracle数据库连接 通过JDBC获得Oracle数据库连接,有三种方式:OCI方式、thin方式和JdbcOdbc桥方式。OCI方式依赖于本地的动态链接库,如果在本 地安装了Oracle数据库客户端可以采用该方式;而thin方式为纯java的数据库连接方式;JdbcOdbc桥方式依赖于本地ODBC数据库源的配 置,这种方式一般不太被采用。1、原创 2012-02-04 23:18:29 · 7611 阅读 · 1 评论 -
java获取oracle中CLOB字段,转换成String
try {PreparedStatement stmt = session.connection().prepareStatement(sql); ResultSet rs = stmt.executeQuery(); while (rs.next()) { Clob clob = (Clob)rs.getObject(1); result = ClobToString(c原创 2012-02-04 23:19:31 · 32880 阅读 · 3 评论 -
第一范式,第二范式,第三范式
第一范式存在非主属性对码的部分依赖关系 R(A,B,C) AB是码 C是非主属性 B-->C B决定C C部分依赖于B第一范式定义:如果关系R 中所有属性的值域都是单纯域,那么关系模式R是第一范式的那么符合第一模式的特点就有1)有主关键字2)主键不能为空,3)主键不能重复,4)字段不可以再分例如: StudyNo | Name | Sex | Contact20040901原创 2012-10-23 11:29:55 · 6552 阅读 · 3 评论