
数据库
抬头望天边一只雁
山高人为峰
展开
-
ACCESS数据库转ORACLE数据库
工具:Navicat for Oracle1、安装Navicat for Oracle安装文件,安装后,新建连接,输入如下图:2、点连接测试,可能会报如下错误:这个时候,要下载instantclient-basic-nt-12.1.0.2.0.zip,这个在oracle官网可以下载。解压后到某个目录3、如下图,设置一下目录。4、点测试,测试成翻译 2016-06-20 17:42:42 · 1960 阅读 · 0 评论 -
建时间维度表(oracle)
第一步:新建数据库表如下:-- Create tablecreate table TIME_BY_DAY_DIMENSION( time_id NUMBER(10) not null, the_date DATE, the_day VARCHAR2(15), the_month VARCHAR2(15), the_翻译 2012-09-19 17:04:56 · 7872 阅读 · 1 评论 -
将PowerDesigner中列的name生成到注释comment中去.vbs
Option ExplicitValidationMode = TrueInteractiveMode = im_Batch Dim mdl 'the current model 'get the current active modelSet mdl = ActiveModelIf (mdl Is N转载 2012-05-30 17:25:38 · 607 阅读 · 0 评论 -
关于触发器一点问题(事务处理中)
在编程中如果使用了事务,在事务中操作的表中含有触发器的话,要小心注意的是,在事务还没有提交的时候,其实触发器已经触发启动了,意思就是说触发器不会等到事务提交的时候才会触发。例如向某个表A插入了一条语句,这个插入语句是包含在事务里面的,A表在表记录新增事件是有触发器的,一般人可能想因为事务还没有提交,且这个时候查这个A表,记录确实也还没有增加,所以这个触发器不会触发运行。但事实上虽然看不到表的记原创 2012-04-13 10:58:30 · 3039 阅读 · 0 评论 -
oracle中直接访问sqlserver的数据
一、配置DSN: 数据源 ODBC 数据源名称:pjfc 默认数据库要选择你想要指向的用户,例如我sqlserver有个用户pjfc 此数据源指向SQLSERVER服务。 注意:1、必须测试通过。 2、必须是系统数据源二、配置hsodbc: 新增$ORACLE_HOME\hs\admin\initCZEIS.ora原创 2012-04-23 16:01:05 · 2552 阅读 · 0 评论 -
Oracle 10g 透明网关访问SQL Server 2008
一、下载Oracle Gateways 10gRelease 2下载地址是:http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html 二、安装1.我的环境是:Windows Server 2003、Oracle 10.2、SQL Server 20转载 2012-03-07 11:20:21 · 675 阅读 · 0 评论 -
行级触发器对当前表操作,”ORA-04091: 表 XX 发生了变化, 触发器/函数不能读它“,解决方法
转:http://zzq0341.javaeye.com/blog/806300行级触发器对当前表操作,”ORA-04091: 表 COMPANY 发生了变化,触发器/函数不能读它“,解决方法文章分类:数据库今天在写一个触发器的时候,发现在当前表的行级触发器里,对当前表进行查询报一下错误:ORA-04091: 表 COMPANY 发生了变化, 触发器/函数不能读它。上网查了一会,解转载 2011-11-17 22:30:36 · 1210 阅读 · 0 评论 -
Oracle split(分隔字符串函数)
一 Oracle版本: 10g PLSQL: 8.0 (http://liuzidong.iteye.com/blog/953559)二 具体代码如下: 1 类型 Sql代码 CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2 (4000) 2 函数 Sql代码转载 2011-10-25 16:57:35 · 914 阅读 · 0 评论 -
SQL Server数据库转换成oracle
经常碰到需要把sql server的数据迁移到oracle的情况。在网上查找一下,有很多方法,有用第三方工具的等,但sql server本身就提供一个“导入导出”的工具,用这个工具就可以把sql server数据转换到oracle中。下面简单列一下操作步骤:1、在原创 2011-02-13 12:00:00 · 16160 阅读 · 1 评论 -
关于EXP-00091 Exporting questionable statistics的错误解决方案
对一个DBA或需使用exp,imp的普通用户来说,在我们做exp的过程中可能经常会遇到EXP-00091 Exporting questionable statistics.这样的EXP信息,其实它就是exp的error message,它产生的原因是因为我们exp工具所在的环境翻译 2011-09-27 21:26:46 · 548 阅读 · 0 评论 -
由pfile创建spfile
文章转自:http://blog.163.com/hrc_llq/blog/static/45982067200852711346155/由pfile创建spfile2008年05月12日 星期一 下午 05:19修改oracle数据库参数文件出错转载 2011-08-26 10:33:48 · 2443 阅读 · 0 评论 -
oracle中将字符串转换成数组
--- 将字符串转换成数组,并根据需要返回指定位置的数组成员create or replace function GetElementFromArrayByIndex(Liststr in varchar2,sPlitVal in varchar2,iPos integer) return varchar2 is/*Liststr--传入将要被分割的字符串sPlitVal--用翻译 2012-10-08 14:34:56 · 3778 阅读 · 0 评论 -
Oracle中创建函数时的Deterministic选项
原文连接:http://blog.sina.com.cn/s/blog_6ff05a2c0100n2qo.html我们平时在SQL语句的WHERE条件中使用函数是很常见的事情,考虑一下下面两个SQL在执行机制上有什么区别: 1. SELECT * FROM T WHERE col1 = UPPER('hello'); 2. SELECT * FROM T WHERE col1 =转载 2012-10-24 10:42:26 · 835 阅读 · 0 评论 -
Oracle创建dblink报错:ORA-01017、ORA-02063解决
一、创建dblink 原始语句: create public database link db_lsxy connect to lsxy identified by lsxy using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.xxx.xxx.xxx)(PORT = 2转载 2013-05-15 15:14:11 · 1136 阅读 · 0 评论 -
无法加载 DLL“oramts.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)
部署网站在服务后,报这个错误。原因是因为在程序处理中使用了oracle的事务,但是服务器没有安装必要的组件导致的。解决方案:Oramts.dll 文件不是作为默认安装包含在安装 Oracle 客户端连接软件时。 若要安装此组件必须单击以选中 Oracle Services for Microsoft Transaction Server 在安装 Oracle 客户端连接软件时复选框。原创 2015-08-04 16:45:16 · 4643 阅读 · 0 评论 -
在windows server2008 64位系统中安装oracle11g 64位检查时出错
在windows server2008 64位系统中安装oracle11g 64位检查时出现的问题在windows server2008 64位系统中安装oracle11g 64位检查时出现的问题检查环境的过程中出现的错误如下:物理内存????????????????失败可用物理内存????????????失败交换空间大小????????????失败转载 2015-04-25 11:25:37 · 5357 阅读 · 0 评论 -
查看oracle11g的alert日志路径
alert E:\app\Administrator\diag\rdbms\orcl\orcl\alert原创 2014-07-11 11:54:07 · 19869 阅读 · 1 评论 -
Sql2008安装提示需重启但重启后问题依旧的解决方法
.a 、重启机器,再进行安装,如果发现还有该错误,请按下面步骤 b、在开始->运行中输入regedit c、到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 位置 d、在右边窗口右击PendingFileRenameOperations,选择删除,然后确认转载 2014-07-18 09:32:42 · 1023 阅读 · 0 评论 -
修改oracle端口号
安装oracle的时候一般默认的原创 2014-04-30 10:03:37 · 1254 阅读 · 0 评论 -
expdp ORACLE:ORA-12560解决办法
设置系统环境变量ORACLE_SID=orcl然后再到cmd下重新expdp没有提示任何错误可以导出了。原创 2014-02-18 14:31:31 · 7062 阅读 · 1 评论 -
EXP-00106: 数据库链接口令无效
导出或导入的时候发生了EXP-00106: 数据库链接口令无效错误。导出客户端环境:装了两个oracle客户端,一个是32bit,一个是64bit。错误原因:判断为客户端导致的。电脑环境变量path指向的是32bit客户端的安装路径。解决方案:方案1:用64bit客户端安装路径的exp或imp来导入导出。例子:在命令行下输入:E:\app\Adminis原创 2014-02-08 11:47:35 · 78938 阅读 · 1 评论 -
PLSQL中文乱码问题
创建一个名为“NLS_LANG”的系统环境变量,设置其值为“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,然后重新启动 pl/sql developer,这样检索出来的中文内容就不会是乱码了。如果想转换为UTF8字符集,可以赋予“NLS_LANG”为 “AMERICAN_AMERICA.UTF8”,然后重新启动 pl/sql developer。其它字符集设置同上。原创 2013-12-02 12:22:06 · 1140 阅读 · 0 评论 -
Oracle 用户经常被锁原因
在登陆时被告知test用户被锁 1、用dba角色的用户登陆,进行解锁,先设置具体时间格式,以便查看具体时间 SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss'; Session altered. 2、查看具体的被锁时间 SQL> select username,lock_date from db转载 2013-08-14 16:16:48 · 1033 阅读 · 0 评论 -
win7(64bit)下通过odbc连接oracle的解决方案
系统环境win7 64bit,安装了oracle10g(32bit)数据库及oracle11g(32bit)的客户端因为想要在pd中通过odbc连接oracle。1、首先装完oracle客户端之后,在控制面板-》管理工具-》数据源 是找不到32位的oracle odbc驱动解决方法:如果是装的是64位客户端,则可以看到64位的oracle odbc驱动,但是配置完成后该数据源不翻译 2013-06-04 16:34:55 · 11695 阅读 · 0 评论 -
sga_max_size设置过大导致ORALCE无法启动ORA-27100解决办法
服务器环境:32位WINDOWS SERVER 2003旗舰版、16G内存、ORACLE10.1.0.2 由于系统内存16G,于是将ORACLE的SGA_MAX_SIZE设置为2G,结果重启数据库时报错:ORA-27100shared memory realm alre转载 2011-08-26 09:25:37 · 1692 阅读 · 0 评论 -
ORACLE SQL性能优化系列(十三)
27. 基础表的选择 基础表(Driving Table)是指被最先访问的表(通常以全表扫描的方式被访问). 根据优化器的不同, SQL语句中基础表的选择是不一样的.如果你使用的是CBO (COST BASED OPTIMIZER),优化器会检查SQL语句中的每个表的物理大小,索引的状态,然后选用花费最低的执行路径.如果你用RBO (RULE BASED OPTIMIZER) ,转载 2006-09-13 18:04:00 · 846 阅读 · 0 评论 -
ORACLE SQL性能优化系列(十五)
ORACLE SQL性能优化系列 (十一) 36. 用UNION替换OR (适用于索引列)通常情况下, 用UNION替换WHERE子句中的OR将会起到较好的效果. 对索引列使用OR将造成全表扫描. 注意, 以上规则只针对多个索引列有效. 如果有column没有被索引, 查询效率可能会因为你没有选择OR而降低. 在下面的例子中, LOC_ID 和REGION上都建有索引.高效:转载 2006-09-13 18:00:00 · 899 阅读 · 0 评论 -
ORACLE SQL性能优化系列(十一)
24. 用EXPLAIN PLAN 分析SQL语句 EXPLAIN PLAN 是一个很好的分析SQL语句的工具,它甚至可以在不执行SQL的情况下分析语句. 通过分析,我们就可以知道ORACLE是怎么样连接表,使用什么方式扫描表(索引扫描或全表扫描)以及使用到的索引名称.你需要按照从里到外,从上到下的次序解读分析的结果. EXPLAIN PLAN分析的结果是用缩进的格式排列的转载 2006-09-13 17:47:00 · 915 阅读 · 0 评论 -
ORACLE SQL性能优化系列(十)
20. 用表连接替换EXISTS 通常来说 , 采用表连接的方式比EXISTS更有效率 SELECT ENAME FROM EMP E WHERE EXISTS (SELECT ‘X’ FROM DEPT WHERE DEPT_NO转载 2006-09-13 17:46:00 · 864 阅读 · 0 评论 -
ORACLE SQL性能优化系列(九)
17. 使用表的别名(Alias)当在SQL语句中连接多个表时, 请使用表的别名并把别名前缀于每个Column上.这样一来,就可以减少解析的时间并减少那些由Column歧义引起的语法错误.(译者注: Column歧义指的是由于SQL中不同的表具有相同的Column名,当SQL语句中出现这个Column时,SQL解析器无法判断这个Column的归属)18. 用EX转载 2006-09-13 17:22:00 · 833 阅读 · 0 评论 -
ORACLE SQL性能优化系列(八)
16. 通过内部函数提高SQL效率. SELECT H.EMPNO,E.ENAME,H.HIST_TYPE,T.TYPE_DESC,COUNT(*) FROM HISTORY_TYPE T,EMP E,EMP_HISTORY H WHERE H.EMPNO = E.EMPNOAND H.HIST_TYPE = T.HIST_TYPEGROUP B转载 2006-09-13 17:21:00 · 757 阅读 · 0 评论 -
ORACLE SQL性能优化系列(七)
12. 尽量多使用COMMIT只要有可能,在程序中尽量多使用COMMIT, 这样程序的性能得到提高,需求也会因为COMMIT所释放的资源而减少: COMMIT所释放的资源:a. 回滚段上用于恢复数据的信息.b. 被程序语句获得的锁c. redo log buffer 中的空间d. ORACLE为管理上述3种资源中的转载 2006-09-13 17:20:00 · 876 阅读 · 0 评论 -
ORACLE SQL性能优化系列(五)
7. 减少访问数据库的次数 当执行每条SQL语句时, ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等等. 由此可见, 减少访问数据库的次数 , 就能实际上减少ORACLE的工作量.例如, 以下有三种方法可以检索出雇员号等于0342或0291的职员.方法1 (最低效) SELECT EMP_NAME , SALA转载 2006-09-13 17:19:00 · 781 阅读 · 0 评论 -
ORACLE SQL性能优化系列(三)
. 选择最有效率的表名顺序(只在基于规则的优化器中有效)ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表 driving table)将被最先处理. 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.当ORACLE处理多个表时, 会运用排序及合并的方式连接它们.首先,扫描第一个表(FROM子句中最后的那个表)并对记录转载 2006-09-13 17:17:00 · 828 阅读 · 0 评论 -
ORACLE SQL性能优化系列(二)
3.共享SQL语句 为了不重复解析相同的SQL语句,在第一次解析之后, ORACLE将SQL语句存放在内存中.这块位于系统全局区域SGA(system global area)的共享池(shared buffer pool)中的内存可以被所有的数据库用户共享. 因此,当你执行一个SQL语句(有时被称为一个游标)时,如果它和之前的执行过的语句完全相同, ORACLE就能很快获得已经被解析的语句以及最转载 2006-09-13 17:16:00 · 859 阅读 · 0 评论 -
ORACLE SQL性能优化系列(一)
1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(se转载 2006-09-13 17:15:00 · 908 阅读 · 0 评论 -
ORACLE SQL性能优化系列(六)
9. 整合简单,无关联的数据库访问 如果你有几个简单的数据库查询语句,你可以把它们整合到一个查询中(即使它们之间没有关系)例如:SELECT NAME FROM EMP WHERE EMP_NO = 1234;SELECT NAME FROM DPTWHERE DPT_NO = 10 ;SELECT NAME FROM CATWHERE CAT_TYPE转载 2006-09-13 17:18:00 · 887 阅读 · 0 评论 -
ORACLE SQL性能优化系列(十二)
25. 用索引提高效率 索引是表的一个概念部分,用来提高检索数据的效率. 实际上,ORACLE使用了一个复杂的自平衡B-tree结构. 通常,通过索引查询数据比全表扫描要快. 当ORACLE找出执行查询和Update语句的最佳路径时, ORACLE优化器将使用索引. 同样在联结多个表时使用索引也可以提高效率. 另一个使用索引的好处是,它提供了主键(primary key)的唯一转载 2006-09-13 17:48:00 · 755 阅读 · 0 评论 -
dtsrun的命令行调用方法
dtsrun的命令行调用方法转载 2011-05-24 11:36:00 · 1402 阅读 · 0 评论 -
oracle下找出表名包含小写字母的所有表
oracle下找出表名包含小写字母的所有表原创 2011-02-23 10:46:00 · 1481 阅读 · 0 评论