当了一次山寨DBA
今天在给地市的数据库做数据迁移的时候,PL/SQL developer突然hang住了,在任务管理器里面杀掉进程之后重新登陆 报错ORA-00257: 归档程序错误。在释放之前仅限于内部连接.正好自己有数据库服务器的帐号,远程登上去...
数据迁移脚本的快速生成
今天要往新数据库上面迁移数据,以往的方式是先从数据字典里面取出所有的表然后放在excel表格里面 利用格式刷来快速生成迁移脚本.或者是使用UE的替换功能快速创建脚本,但是今天在生成脚本的...
归档模式下的表空间文件无法用命令删除
今天出差的第二天,给一个地市配置好了一台服务器,早上开始赋权限和增加表空间的操作,但是在增加了120G 空间后 给另外一个表空间增加文件的时候 忙中出错 把新表空间的增加语句 增加到了第一个空间里面create tablesp...
sum(col) over(order by col)的用法
今天学习到了新的知识,关于sum(col) over(order by col)的用法,create table t1 (id number,chg number);insert into t1 values(1,1);insert into t1 values(2,2);insert into t1 values(3,3);insert into t1 values...
一个自定义函数
今天写一个存储过程,需要对每个月的前五天做出判断,以便做出相应的处理.函数如下create or replace function p_return_date return number as p_d1 date;p_d2 date;p_d3 date;p_d4 date;p_d5 date;p_n n...
Oracle 指定别名"A" or"a"造成的问题
今天遇到一个奇怪的问题: 本来打算给一个数据检查的视图做一个参数表.SQL>create table d_data_look_over as select distinct upper(table_name) "table_name" from dw_log where start_date>trunc(sysdate-10);SQL...
linux下设置ORACLE_SID和ORACLE_HOME变量
今天遇到了一个数据库异常重启的错误.登录出现如下提示: could not logon as stat ORA-01034:ORACLE not avail...
create database error:ORA-01501/ORA-01100
今天刚装了一个数据库,装好之后开始创建表空间,但是在创建表空间的时候开始报错:SQL> create tablespace tbs datafile 'F:\oracle\product\10.2.0\oradata\orcl\tbs_01.dbf' size 300M; ER...
恼人的bug 无效的rowid&对象不再存在
从去年开始就一直被oracle8i/9i的 "无效rowid"和"对象不再存在"错误所困扰.局方也请oracle的专家来看过,但是人家也解决不了,一句这是oracle8i/9i以下版本的错误,建...
存储过程中嵌套存储过程的变量执行方式
今天给新同事讲数据维护过程的时候,他提出了写一个存储过程来检查日志表出错之后调用相关的存储过程,我们的日志表当中写入的表名和相应存储过程名称的差别是多了一个etl_,因此ETL_||table就是存储过程的名称.但是在...
教训
前天发生了一件重大的事故,由于同事的自以为是,不跟客户沟通,删除了客户数据库上面07年所有的历史帐期表。这一操作在他看来是为了缓解数据库紧张的存储空间,为了完...
今天的收获
今天在创建一个job的时候 由于对设置间隔时间不明白,于是google发现如下收获:alter session set nls_language='SIMPLIFIED CHINESE';alter session set nls_language='american';上述会话修改表示返回的语言SQL> a...
PLS-00172: string literal too long
今天写一个表的整合存储过程,由于这个表的字段比较多,达到了762个字段,加上最后一个插入操作是要对所有的字段进行nvl(column_name,0)的操作,编译之后报错如下:Compilation errors for PROCEDURE orcl.PR_CUST_CONSU...
数据修补一则
今天在更新一个参数表 执行update之后发现少更新了一个字段 在修改了条件之后接着又执行了一次结果在检查的时候发现 出现了问题name字段下出现了类似"摊分发生费发生费"这样的名称这是由于执行了两次以下update语句...
解决存储过程截取错误的问题
今天遇到一个问题 下发的存储过程有时候会出现 "无效rowid"或者"对象不再存在"的问题,而一旦发生这种错误,则存储过程当中的 EXCEPTION 无法截取到错误.过程脚本如下:CREATE OR REPLACE PROCEDURE SP_TES...
奇怪的权限问题
今天在写一个存储过程的时候 由于需要事先判断表空间是否足够,选择较大的一个表空间创建表,因此在过程当中给变量t_be_space赋值 SELECT TABLESPACE_NAME into t_be_space FROM (SELECT UPPER(F.T...
一个返回值函数
CREATE OR REPLACE FUNCTION FUN_LOAD_TABSPAC RETURN VARCHARAS V_VAR VARCHARBEGIN SELECT TABLESPACE_NAME INTO V_VAR FROM ZYP_TEST; RETURN V_VAR;END;Compilation errors for FUN...