Welcome 微信登录

首页 / 数据库 / MySQL

Oracle 游标与绑定变量

Oracle 游标与绑定变量

Oracle执行SQL语句就是打开游标,解析游标,执行游标,关闭游标的过程。了解游标的这几个阶段,我们也就弄清楚了SQL执行过程,这是本文要介绍的第一个内容。另外,在java编程中,我们通常说要使用预处理的形式来写SQL语句(比如:select * from table where A = ?),也就是绑定变量的形式。因为,这样效率高。那么,为什么使用绑定变量就比不使用绑定变量(比如:select * from table where A = "123")...
Oracle 对象统计信息

Oracle 对象统计信息

一. 概述对象统计信息描述数据是如何在数据库中存储的。比如,一张表里面有多少行数据,某一列数据的最大值是多少等等。这些信息有助于查询优化器找到正确高效的执行计划。举个例子,有这样一个场景,从一个特定地点回家,哪种交通方式最快捷?汽车,火车还是飞机?如果不知道我在哪里,我家在哪里,就得不到合理的答案。同样,如果没有对象统计信息,查询优化器也找不到正确高效的执行计划。二. 可用的对象统计信息有三种类型的对象统计信息可用:表统计,列统计和索引统计,下面举一个例子...
Oracle 收集对象统计信息

Oracle 收集对象统计信息

一. 概述Oracle9i之前,由DBA负责收集对象统计信息。默认情况下,数据库不提供对象统计信息。到了oracle10g,在创建数据库的时候,就创建了一个定期收集对象统计信息的作业并进行调度。以便拥有最新的对象统计信息,因为表时刻都在变化,假如某一时刻插入了数据,对象统计信息也需要更新的。二. 收集对象oracle是用工具包dbms_stats来收集统计信息,根据不同的用途,收集对象也不相同。可以针对整个数据库,数据字典,用户或者单个表,索引进行收集。如...
Oracle 配置查询优化器

Oracle 配置查询优化器

一. 背景介绍查询优化器对于SQL语句的性能非常重要,因为我们写的SQL语句最后被数据库执行,是通过查询优化器生成执行计划实现的。如果查询优化器生成的执行计划低效,那么就会导致低劣的性能。有一些参数的配置能够影响到查询优化器生成高效的执行计划,但也是有风险的。总之,可以这么说,配置查询优化器的代价是昂贵的,但值得为此付出。二. 配置线路图我们可以按照如下图所示的路线,来一个个参数进行配置下面是对图中标有数字步骤的描述:(后面再详细描述各个参数的含义)1. ...
Oracle日期类型介绍

Oracle日期类型介绍

Oracle与日期有关的有三种类型:date,timestamp与interval。DATE和TIMESTAMP类型存储精度可变的固定日期/时间,二者区别是,后者秒可以精确到小数,另外还可以有时区之分。。INTERVAL类型可以很容易地存储一个时间量,如“8个小时”或“30天”。将两个日期相减,就会得到一个时间间隔(INTERVAL);例如,将8小时间隔加到一个TIMESTAMP上,会得到8小时以后的一个新的...
Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令

Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令

Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于 在oracle 8i 中 安装目录ora81BIN被设置为全局路径,该目录下有EXP.EXE与IMP....
ORA-12641 错误的一个解决办法

ORA-12641 错误的一个解决办法

最初Oracle数据库装在HP-Unix上的,后来为了测试移植到Windows平台上,测试其他各项都没有问题,后来发现一个asp.net写的程序无法访问,报错提示ORA-12641: 验证服务无法初始化,排除了.net用户权限问题之后,解决办法如下:将sqlnet.ora文件中的SQLNET.AUTHENTICATION_SERVICES=(TNS)修改为SQLNET.AUTHENTICATION_SERVICES=(NONE),然后再连接即可连接成功,s...
Oracle创建自动增长列

Oracle创建自动增长列

序列(Sequence)是一种可以被多个用户使用的用于产生一系列唯一数字的数据库对象。序列定义存储在数据字典中,通过提供唯一数值的顺序表来简化程序设计工作,可以使用序列自动产生主键的键值。当一个序列第一次被查询调用时,它将返回一个预定值。在随后的每次查询中,序列将产生一个按指定的增量增长的值。序列可以循环,或者是连续增加的,直到指定的最大值为止。 创建序列语法如下:create sequence [模式]序列名称[start with 起始数字] [inc...
Oracle中变异表处理办法

Oracle中变异表处理办法

Oracle变异表在Oracle数据库中,变异表是当前被DML语句修改的表。而对于数据库上的triggrt(触发器)来说,变异表就是trigger在其上定义的表。需要明确的是trigger中SQL语句不能进行如下操作: 1)读或者修改触发语句的任何变异表,包括触发表本身。 2)读或者修改触发表的约束表中的主关键字,唯一关键字和外部关键字。 而除此之外的其他列都可以修改。 如何突破变异表? 方法一是用两个触发器,一个行级的,一个语句级的(...
Oracle中变异表处理办法

Oracle中变异表处理办法

Oracle变异表在Oracle数据库中,变异表是当前被DML语句修改的表。而对于数据库上的triggrt(触发器)来说,变异表就是trigger在其上定义的表。需要明确的是trigger中SQL语句不能进行如下操作: 1)读或者修改触发语句的任何变异表,包括触发表本身。 2)读或者修改触发表的约束表中的主关键字,唯一关键字和外部关键字。 而除此之外的其他列都可以修改。 如何突破变异表? 方法一是用两个触发器,一个行级的,一个语句级的(...
Oracle 删除用户下的所有用户对象

Oracle 删除用户下的所有用户对象

犯了一个错误,使用PL/SQL Developer恢复备份时,不小心把备份恢复到了system用户下,居然不出任何意外的成功了。而这时候我的心都碎了,大家知道system是Oracle的超级管理员之一,仅次于sys用户,是管理次一级的系统对象和用户对象的管理员,不能够删除和重建,然而那么多数据导进去了,怎么清楚掉呢?网上搜索了些资料,也得到了些启发:用户数据对象是可以集中管理的,可以通过select 查出和过滤用户对象,然后一一删除即可。麻烦是麻烦了些,总...
Oracle GoldenGate 11g单向DDL配置实战

Oracle GoldenGate 11g单向DDL配置实战

在认真学习了GoldenGate企业级运维实战后,重点是对OGG几个进程的理解,结合对原理的理解,在整整实验了近两天,反复配置了四次之后,终于配置成功。本文经过多次配置成功实践整理而成,还有很多的细节需要完善。目录================================一、环境准备并安装GoldenGate1. 数据库准备情况2. 下载OGG软件并解压安装3. 准备OGG环境变量4. 配置日志模式5. 创建GoldenGate用户帐号6. 安装Go...
<< 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 >>