oracle
文章平均质量分 60
悄悄小土豆
来如流水兮逝如风,不知其何所来兮何所终。
展开
-
oracle存储过程语法回顾及注意事项
一,oracle存储过程语法 1.oracle存储过程结构 CREATE OR REPLACE PROCEDURE oracle存储过程名字( 参数1 IN NUMBER, 参数2 IN NUMBER) IS变量1 INTEGER :=0;变量2 DATE;BEGINEND oracle存储过程名字转载 2014-01-17 23:13:39 · 1903 阅读 · 0 评论 -
oracle 11g不能导出空表的解决方法
在oracle 11g r2中,发现传统的exp居然不能导出空的表,然后查询一下, 发现需要如下的步骤去搞,笔记之。 oracle 11g 新增了一个参数:deferred_segment_creation,含义是段延迟创建,默认是true。具体是什么意思呢? 如果这个参数设置为true,你新建了一个表T1,并且没有向其中插入数据,那么这个表不会立即分配转载 2014-03-27 17:35:04 · 457 阅读 · 0 评论 -
Oracle 特殊符号'&'的处理
在SQL*Plus中默认的"&"表示替代变量,也就是说,只要在命令中出现该符号,SQL*Plus就会要你输入替代值。这就意味着你无法将一个含有该符号的字符串输入数据库或赋给变量,如字符串“SQL&Plus”系统会理解为以“SQL”打头的字符串,它会提示你输入替代变量Plus的值,如果你输入ABC,则最终字符串转化为“SQLABC”。 方法一:set define offset define原创 2014-04-17 11:25:43 · 1553 阅读 · 0 评论 -
ORA-04091:表XX发生了变化,触发器/函数不能读它
--废话不多说,直接看代码-----第一个触发器CREATE OR REPLACE TRIGGER tri_id_seq_do_386_action--车险政策主表状态修改时关联修改子表状态AFTER UPDATE ON do_table_386FOR EACH ROWDECLAREBEGIN UPDATE do_table_388 SET fd12 = :n原创 2014-04-04 11:58:22 · 13829 阅读 · 1 评论 -
Oracle中Null与空字符串' '的区别
Oracle中Null与空字符串' '的区别 含义解释: 问:什么是NULL? 答:在我们不知道具体有什么数据的时候,也即未知,可以用NULL,我们称它为空,ORACLE中,含有空值的表列长度为零。 ORACLE允许任何一种数据类型的字段为空,除了以下两种情况: 1、主键字段(primary key), 2、定义时已经加了NOT NULL限制转载 2014-09-11 14:42:40 · 629 阅读 · 0 评论 -
oracle密码过期ORA-28002
oracle密码过期ORA-28002: 7天之后口令将过期的解决方法转载 2014-09-01 10:25:34 · 500 阅读 · 0 评论 -
Oracle修改字段类型方法总结
有一个表名为tb,字段段名为name,数据类型nchar(20)。1、假设字段数据为空,则不管改为什么字段类型,可以直接执行:alter table tb modify (name nvarchar2(20));2、假设字段有数据,则改为nvarchar2(20)可以直接执行:alter table tb modify (name nvarchar2(20));3、转载 2014-11-06 10:32:58 · 556 阅读 · 0 评论 -
ora-12514 tns 监听程序无法识别连接描述符中请求的服务
今天,远程连接linux服务器时遇到这样一个错误,tnsnames.ora 和 listener.ora文件配置都没有错误 但是就是连接不上 tnsping 也是正常的 但用plsql连接的时候总是报错 ora-12514 tns 监听程序无法识别连接描述符中请求的服务,因为连接本地数据库时没有问题的 所以监听程序应该没问题,接下来就查看tnsnames.ora 发现还是这里出了问题,其实报错原创 2015-01-12 14:24:50 · 904 阅读 · 0 评论 -
本地无客户端远程连接oracle服务器
1、先到Oracle网站下载Instant Client 要跟服务器的oracle版本相兼容 :http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html根据你的操作系统选择不同的Instant Client版本下载会是一个压缩文件,解压之后的文件夹叫:D:/in转载 2015-01-17 10:05:53 · 601 阅读 · 0 评论 -
oracle 中使用单引号(')和双引号(")
--在ORACLE中,单引号有两个作用:-- 1:字符串是由单引号引用-- 2:转义。--单引号的使用是就近配对,即就近原则。而在单引号充当转义角色时相对不好理解--1.从第二个单引号开始被视为转义符,如果第二个单引号后面还有单引号(哪怕只有一个)。 SQL> select '''' result from dual;RESULT------' --第二个单引转载 2015-05-08 15:09:46 · 542 阅读 · 0 评论 -
ORA-00937: 不是单组分组函数
最近遇到的点小东西,值得记录一下。select 列表项中除了包含聚合函数外,还包含了表的某些列,那么你将必须使用group by语句,否则语法通不过。例如:SQL>1 select deptno,job,avg(sal)2 from emp3 ;ERROR 位于第 1 行:ORA-00937: 非单组分组函数其实这转载 2014-03-14 11:57:52 · 867 阅读 · 0 评论 -
MERGE INTO用法
动机: 想在Oracle中用一条SQL语句直接进行Insert/Update的操作。 说明: 在进行SQL语句编写时,我们经常会遇到大量的同时进行Insert/Update的语句 ,也就是说当存在记录时,就更新(Update),不存在数据时,就插入(Insert)。 merge into 是特有的功能,相当于在 MSSQL中的 if exists(...)转载 2014-03-14 11:49:41 · 884 阅读 · 0 评论 -
Linux下安装Oracle11g服务器
安装环境 Linux服务器:SuSe10 sp2 64位 Oracle服务器:Oracle11gR2 64位系统要求Linux安装Oracle系统要求 系统要求说明内存必须高于1G的物理内存转载 2014-03-03 15:10:08 · 491 阅读 · 0 评论 -
Oracle SQL的优化
Oracle SQL的优化规则:尽量少用IN操作符,基本上所有的IN操作符都可以用EXISTS代替 用IN写出来的SQL的优点是比较容易写及清晰易懂,但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE 试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层转载 2014-01-20 10:28:03 · 543 阅读 · 0 评论 -
关于Oracle11gR2用EXP导出时报EXP-00011错误的解决方法
在给客户培训的过程中,发现客户数据库服务器存在一个奇怪的现象。客户数据库服务器环境为AIX6+Oracle11gR2,具体现象如下:执行EXP导出时,部分表提示 EXP-00011:表不存在错误,但是查询user_all_tables视图,此表确实是存在的,并且执行select语句也能成功,不过表为空表,查看权限等也没有问题。后来通过查询资料,发现问题是由Deferred Segment Cr转载 2014-01-19 11:42:47 · 640 阅读 · 0 评论 -
如何在oracle中导入导出dmp文件[转]
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用…… Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服转载 2014-01-19 12:14:55 · 646 阅读 · 0 评论 -
常用SQL
1、按字段删除重复数据,只保留一条delete from table_name awhere a.rowid <>(select max(b.rowid) fromtable_name b where b.name = a.name and b.kecheng = a.kecheng and b.score = a.score);原创 2014-01-20 14:07:00 · 474 阅读 · 0 评论 -
Oracle Exists 用法
sql exists和not exists用法 exists (sql 返回结果集,为真) not exists (sql 不返回结果集,为真) 如下: 表A ID NAME 1 A1 2 A2 3 A3 表B ID AID N转载 2014-01-20 18:40:45 · 1034 阅读 · 0 评论 -
Oracle安装配置—64位Win7安装配置64位Oracle
以前在32位Win7上安装和使用Oracle时,很简单,很顺利。但是现在系统升级了,类似于PL/SQL Developer或者Navicat Premium等工具无法连接64位Oracle。64位系统下倒是可以安装32位Oracle,但是又觉得不合适,在网上看到了很多方法,成功了。现在将我的方法提出来。 先获取Oracle,在Oracle官网可以免费下载,而且带宽足够,下载很快。转载 2014-02-10 09:36:50 · 776 阅读 · 0 评论 -
win764位系统安装Oracle11Gr2报错:Oracle Database Configuration Assistant失败。
先看报错信息 以下是按弹错的先后顺序截图的1、服务没有及时响应启动或控制请求2、ORA-12560这个错很常见 不过这次是在安装过程中出现的3、提示启动服务失败4、以下是详细信息再说我的解决过程:首先是查看日志,但日志里并没有明显的错误信息;之后查看服务发现服务里 oracleserviceoracle服务没有启动,手动启动不成功;然后查看系原创 2014-02-10 15:38:09 · 6732 阅读 · 2 评论 -
PLSQL developer 连接不上64位Oracle 的解决方法
Windows 64位下装Oracle 11g 64位,PLSQL Developer使用出现以下问题:1、Database下拉框为空:2、强制输入用户名、密码及Database,登录弹出:引用Initialzation errorCould not initialize"...."Make sure you have the 32 bits Ora转载 2014-02-10 15:42:26 · 806 阅读 · 0 评论 -
ORA-01502: 索引或这类索引的分区处于不可用状态
ORA-01502: 索引或这类索引的分区处于不可用状态原因: 出现这个问题,可能有人move过表,或者disable 过索引。1. alter table xxxxxx move tablespace xxxxxxx 命令后,索引就会失效。2. alter index index_name unusable,命令使索引失效。解决办法:1. 重建索引才是解决这类问转载 2014-02-17 17:50:19 · 577 阅读 · 0 评论 -
oracle导入导出命令详解(附数据库每天定时备份脚本)
一. 导出工具 exp1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移 它有三种模式: a. 用户模式: 导出用户所有对象以及对象中的数据; b. 表模式: 导出用户所有表或者指定的表; c. 整个转载 2014-02-17 19:19:47 · 1799 阅读 · 0 评论 -
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 I转载 2015-08-12 17:30:04 · 859 阅读 · 0 评论