oracle

ubuntu下pthon通过sqlalchem库访问oracle数据库

sqlalchemy并不是数据库驱动,python访问oracle数据的驱动是cx_Oracle,但是这个驱动依赖于Oracle instant client。所以python如果想通过sqlalchemy库访问oracle数据库,那么需要先安装Oracle instant client、再安装cx_Oracle、最后安装sqlalchemy。搞了一圈下来,发现这个过程比较

oracle中查找存放数据文件目录个数的sql

用来查找oracle数据文件所在目录个数的sql,在迁移数据文件的时候有用。 SELECT distinct substr(name, 0 - length(name), INSTR(name, '/', -1, 1))from v$datafile执行效果如下面所示 SUBSTR(NAME,0-LENGTH(NAME),INSTR(NAME,'/',-1,1)) ----

SQL的连接

基础数据准备创建两张用于测试的表--用户表create table test_user(id int, name varchar(10));--工作信息表create table test_job(id int, job varchar(10));分别插入两条测试数据--往用户表中插入数据insert into test_user values(1, '张三');inser

Oracle导出表不导出空表解决办法

因Oracle 11g默认对空表不分配segment,所以导出表时会默认不会导出空数据表,所以需要设置deferred_segment_creation参数为false后,无论是空表还是非空表,都分配segment。 解决办法 sqlplus中执行如下命令: alter system set deferred_segment_creation = false; show p

Reboot-less node fencing in Oracle Clusterware 11g Release 2

在进行一次RAC的高可用性测试时,当private网卡的网线被拔掉之后,没有出现传说中的有一个节点被CRS强制重启,取而代之的是node2上面的ASM实例和RDBMS实例被关闭;当网线被重新插上时,node2上面的ASM实例和RDBMS实例自动重新启动。基于上面的现象,在google上搜索,发现oracle在11.2.0.2版本之后引入了叫reboot-less node

Ubuntu 86_64安装oracle 11gR2 XE

Oracle 11gR2 XE(注意XE)是Oracle提供的精简版Oracle,拥有正式版的所有功能,对内存要求也不高。很遗憾的是,官方只提供了rpm安装包(适用于CentOS,Redhat,Fedora),并没有提供deb包。本文提供如何安装Oracle 11gR2 XE的步骤。下载安装文件http://www.oracle.com/technet...rpm转debu

ubuntu中安装oracle 11g

准备工作基本和Ubuntu X86_64安装oracle 11gR2 XE相同。首先,将系统更新到最新sudo apt-get updatesudo apt-get dist-upgrade安装依赖包sudo apt-get install alien binutils build-essential cpp-4.4 debhelper g++-4.4 gawk gcc-4

SQL NULL值比较陷阱

数据库里null值的比较是一件非常坑爹事情,一不小心就会掉到陷阱里去。以一个非常常见的场景为例: SELECT * FROM some_table WHERE field1 = field2 看上去没什么问题吧。错了!如果field1、field2中有一个值为null,那么结果就会变得很神奇。 下面列出各种情况,你可以先不看答案,看看你能猜对几个 SQL 结果 select

oracle外键反查套件

经常和oracle打交道的人都应该遇到会遇到过这么一类需求:哪些表引用了这个表这条数据被引用了几次这张表引用了哪些表,引用的字段是什么本人也经常遇到这些问题,特别是当删除一条数据总是被告知被引用的时候。于是写了以下外键反查套件:注: 本套件只支持表中主键列名为ID,ID为NUMBER类型,如果不符合你的需求可自行修改。用法查询我引用谁SELECT * FROM TABLE(