
数据库
zwxiaole
坚韧,勇敢果决,热忱,知足而不辱,了解时机,等待时机,抓住时机!
展开
-
oracle 物化视图无法删除 解决方案
首先查看DBMS_jobs找到你无法删除的物化视图的job编号(假设为421)然后登录sys用户sql查找select * from dba_jobs_running; 查询结果为的sid (假设为 296 job为421)然后执行sqlselect sid,serial# from v$session where sid=296;结果为 SI...原创 2014-12-17 10:02:25 · 2866 阅读 · 0 评论 -
dblink方式处理 blob clob字段的数据同步
已有dblink cs,同步数据时会报错 因为有blob字段,处理方法时 新建一张全局临时表 表结构跟原表一样,然后dblink上的数据 先插入临时表 再插入目标表 亲测通过--任务明细表insert into fxyd_rwmx (select * from fxyd_rwmx@cs where rwpc_bh in (...));--任务审批表 由于有blob字段 因此采用...原创 2014-04-15 17:45:45 · 731 阅读 · 0 评论 -
oracle function执行dml语句的方法
create or replace function F_DEALWITH_LSBD(YDYF varchar2) return varchar2 is TYPE ref_type IS REF CURSOR; P_YDYF varchar2(8);--年度月份 V_SQL_QUERY CLOB;--查询未返写的数据的sql V_NSRDZDAH var...原创 2015-03-10 19:23:16 · 1859 阅读 · 0 评论 -
oracle创建表空间和用户 以及彻底删除用户和表空间以及关联数据
--创建表空间和用户CREATE TABLESPACE TBS_PERM LOGGING DATAFILE 'D:/app/Administrator/oradata/fpglqyb/TBS_PERM.DBF' SIZE 50M AUTOEXTEND ON NEXT 1024K MAXSIZE UNLIMITED EXTENT MANAGEMENT LO...原创 2014-04-02 14:17:26 · 492 阅读 · 0 评论 -
oracle 查看字符集
select * from nls_database_parameters 其中 nls_language表示了显示方式, 就是sqlplus的程序的显示字体,有SIMPLIFIED CHINESE,American america 其中 nls_characterset是字符集设定, 常用的一些Oracle字符集有UTF8,US7ASCII,WE8ISO8859P...原创 2014-03-31 09:57:04 · 163 阅读 · 0 评论 -
plsql 查询历史sql
编辑 -- 重新调用语句 可以查看在plsql中执行过的历史sql语句原创 2013-10-18 16:31:18 · 246 阅读 · 0 评论 -
oracle 利用原来的表 的结构创建新表
create table xxx_target as select * from xxx_source where condotion='xxx'; xxx_target目标表 xxx_source源表 condotion任意条件 不成立的原创 2015-03-09 15:34:51 · 952 阅读 · 0 评论 -
oracle 查询用户表 表列名 表注释
查询表select t.* from user_tables t where t.table_name='tablename'; 查询表字列select * from user_tab_columns c where c.TABLE_NAME='tablename'; 查询注释select cs.column_name,cs.comments from user_col...原创 2015-03-04 10:30:01 · 390 阅读 · 0 评论 -
oracle count(decode(x,x,x)) group by 合用小技巧
select count(decode(mc,null,null,1)) ymcs, count(decode(mc,null,1,null)) wmcs, from totalgroup group by bh 这句话的意思 将totalgroup表 根据小组编号bh分组然后把小组中有名称的人(mc 不为null)人数统计和小组中没有名称的人...原创 2013-10-09 11:42:21 · 685 阅读 · 0 评论 -
oracle type的解析
Oracle 自定义TYPE 的几种用法Oracle中的类型有很多种,主要可以分为以下几类: 1、字符串类型。如:char、nchar、varchar2、nvarchar2。 2、数值类型。如:int、number(p,s)、integer、smallint。 3、日期类型。如:date、interval、timestamp。 4、PL/SQL类型。如:pls_integer、binary_...原创 2014-08-04 11:05:43 · 201 阅读 · 0 评论 -
查询半小时以前的表数据内容,误操作专用
select * from tablename AS OF TIMESTAMP systimestamp - 1/24/2;原创 2015-04-14 18:13:10 · 298 阅读 · 0 评论 -
建索引的心得
索引种类很多唯一索引位图索引btree索引如何选择适合的索引,首先各种索引的特性这里不再详细描述选择一个索引最关键的一点 是他可以筛选出少量的数据当你建了一个索引但是查出的数据是大量的话 那么建索引就没有意义 还会引发反作用 导致sql效率下降...原创 2015-05-19 15:59:01 · 200 阅读 · 0 评论 -
用sqlplus或者 plsql的命令窗口查看执行计划
用sqlplus或者 plsql的命令窗口查看执行计划 set linesize 200set pagesize 1000explain plan for 要执行的sql;select * from table(dbms_xplan.display); 1.不能光看执行计划进行sql效率的判断当长时间没有进行统计信息的收集时,执行计划将变得不可能,甚至会是s...原创 2015-05-20 10:05:47 · 1191 阅读 · 0 评论 -
子查询中使用了递归CONNECT BY巨慢的解决方案
有一段sql执行速度很慢 要50s经查询是由于在sql的子查询中使用了递归查询导致sql如下select (SELECT to_char(temp.rwwcsx, 'yyyy-mm-dd') from (SELECT * FROM fxyd_rwdy_mx mx order by mx.rwdy_sj desc...原创 2014-12-09 20:05:36 · 2290 阅读 · 0 评论 -
oracle CONNECT_BY_ROOT 在9i中的实现
SELECT * FROM FXYD_RWMX MX_ROOT, (SELECT T.*, --CONNECT_BY_ROOT(T.FXXX_BH) ZZBH 不支持9i SUBSTR(SYS_CONNECT_BY_PATH(T.FXXX_BH, '/') || '/',2,INSTR(SYS_CONNECT_BY_PATH(T.FXXX_B...原创 2014-12-09 17:31:43 · 433 阅读 · 0 评论 -
oracle 查出字段中含有英文的记录的sql
select * from dim_swjg j where translate(trim(j.swjg_id), 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz', ' ') <> trim(j.swjg_id) ;原创 2014-10-09 14:19:47 · 1804 阅读 · 0 评论 -
oracle function 物化视图 存储过程 等在命令窗口能够执行
为了使 oracle function 物化视图 存储过程 等在命令窗口能够执行 在function 和存储过程后面 加上 / 物化视图后面不能增加 / 物化视图sql语句中间的union all 不能有空格和换行 ...原创 2014-09-24 15:38:29 · 318 阅读 · 0 评论 -
oracle function 动态sql 遍历结果集
用来组织动态sql以及从动态sql查询结果集中取数的function--传入模型和扫描标号create or replace function F_GET_HYNSR(V_MXDM varchar2,V_SMBH varchar2) return varchar2 is TYPE ref_type IS REF CURSOR; V_NSRHS number; V_H...原创 2014-09-20 10:57:05 · 1410 阅读 · 0 评论 -
plsql 命令窗口 执行物化视图创建脚本失败的解决
在sql窗口可以执行的物化视图代码,在命令窗口无法创建成功。原因就是 在物化视图的脚本里 使用了union 而且在union 前后有空格,或者在union上下有换行,修正后就可以正常创建了...原创 2014-09-19 10:20:35 · 757 阅读 · 0 评论 -
oracle 查看锁表进程 并杀掉
1.查看锁表进程的sqlselect t2.OBJECT_ID,c.OBJECT_NAME,t1.* from v$session t1, v$locked_object t2,all_objects c where t1.sid = t2.SESSION_ID and c.OBJECT_ID = t2.OBJECT_ID; 2.杀掉进程的sql alter sys...原创 2014-09-15 10:57:51 · 169 阅读 · 0 评论 -
oracle job定时任务的使用
在命令窗口执行--创建同步核心类别表的JOBvariable job number;begindbms_job.submit(:job,'p_sync_fxsb_zdylb;',sysdate,'sysdate+1/1440');end;/--执行jobbegindbms_job.run(:job);end;/ 就成功创建了一个job 并启动了j...原创 2015-06-02 20:45:51 · 192 阅读 · 0 评论 -
什么时候不适合用数据库集群
数据库集群一份数据 多个服务访问 即所谓的集群 集群适合于那种一个服务访问 内存吃不消的情况 不适合场景 经常有大数据量的查询统计,导致多个集群间的数据(存在内存里的)互相传输是的其中某几台数据库查询很慢...原创 2015-05-20 14:04:37 · 408 阅读 · 0 评论 -
group by order by一起用注意点
当group by order by一起用时order by 内的字段要在group by里都存在原创 2013-09-26 11:20:33 · 164 阅读 · 0 评论 -
oracle 10g创建dblink 链接11g 报错的解决
10g创建dblink代码-- Create database link create database link jxkp connect to jxkp identified by jxkp using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.16...原创 2015-01-30 11:03:46 · 399 阅读 · 0 评论 -
oracle 遇见过的错误集锦
1.ora-38104: 无法更新 on 子句中引用的列 原因因为 在merge into 语句的update中 更新了用于作为on 链接的字段 merge into fxyd_rwsp sp using (SELECT ? RWPC_BH, SYSDATE SPSJ, ? XXLY_DM, ...原创 2014-07-29 13:18:17 · 232 阅读 · 0 评论 -
oracle视图view
视图view创建语法CREATE [ OR REPLACE ] VIEW [{FORCE |NOFORCE}] view_name[(alias_name [,alias_name…])] AS subsquery[WITH {CHECK OPTION |READ ONLY} CONSTRAINT constraint_name];分为一般视图和物化视图一般视图是虚表不占...原创 2013-05-29 13:32:50 · 152 阅读 · 0 评论 -
oracle 索引和表分区
索引 并不是所有情况使用索引都会加快查询速度,full scan table 有时会更快,尤其是当查询的数据量占整个表的比重较大时,因为full scan table采用的是多块读, 当Oracle优化器没有选择使用索引时不要立即强制使用,要充分证明使用索引确实查询更快时再使用强制索引。以下例子drop table mytest;create table mytest( ...原创 2013-05-29 10:34:24 · 128 阅读 · 0 评论 -
oracle rownum分页3中方式的比较
Oracle分页 ①采用rownum关键字(三层嵌套) SELECT * FROM( SELECT A.*,ROWNUM num FROM (SELECT * FROM t_order)A WHERE ROWNUM<=15)WHERE num>=5;--返回第5-15行数据 ②采用row_number解析函数进行分页(效率更高)...原创 2013-05-26 18:39:28 · 145 阅读 · 0 评论 -
oracle 代替 update from
可以用子查询代替update tablea set a=(select b.a from tableb b,tablea a where a.c=b.c and 限定范围的条件如 b.d in (....))where exists (select 1 from tableb b,tablea a where a.c=b.c and 限定范围的条件如 b.d in (....))例...原创 2012-08-28 15:07:23 · 209 阅读 · 0 评论 -
oracle 执行存储过程方法
存储过程 p_test里面有3个参数p_schoolid ,p_classid ,p_classname执行方法如下begin p_test(p_schoolid => 'FF80808135C3B2770135C48CFE392298',p_classid =>'FF80808137C594270137D915C1F93031',p_classname =>...原创 2012-08-27 16:44:04 · 424 阅读 · 0 评论 -
数据库多表操作
学生表 student (sid,stuname,age)课程表course (cid,cname,credit)学生课程成绩表 stucourse (sid,cid,achi)求 平均分大于85的学生平均成绩以及学生姓名 select student.stunme,avg(stucourse.achi) from student,stucourse where studen...原创 2013-05-12 21:18:55 · 126 阅读 · 0 评论 -
端口转发
最近用到一个项目需要用plsql连接外网的数据库这边一个方法 使用SecureCRT.EXE设置一个本地端口转发 首先配置SecureCRT.EXE,如图配置一个连接到外网的链接图1设置一个端口转发选中左侧的port forward新增一个转发端口 如图 图2然后配置plsql的 tnsnames.ora写入test =(DESCRI...原创 2013-04-15 13:31:00 · 101 阅读 · 0 评论 -
oracle 函数综合小例子 日期的操作等
前提有一张学生表student 里面有个birthday字段(日期字段)让你求出 大于10岁的学生 这边仅仅以年份判断 这里思路是把birthday与当前的日期相比 通过年份的差来判断首先要把日期类型转化成字符串,to_char(obj,formart)to_char(birthday,'yyyyMMdd') 顺带一句转化成日期 to_date(str,for...原创 2013-03-29 13:36:29 · 139 阅读 · 0 评论 -
sql 语句的 内连接 外连接 以及 交叉连接
sql的连接 分为三大类1.内连接 2.外连接 3.交叉连接 1.内连接内连接又分为3类 inner join等值连接,不等值连接,自然连接select *from table1 join table2 on table1.条件列名 = table2.条件列名等价于 select table1.* ,table2.* from table1 A ,table...原创 2013-03-28 16:51:51 · 157 阅读 · 0 评论 -
oracle 回收站那些事
purge recyclebin删除回收站的表 与恢复2009-09-12 12:17:13| 分类: oracle|字号 订阅1 drop table books;的指令会将表放到回收站里, 2 用 flashback table "BIN$1Oiy3qm/QJubov1BwBUOgw==$0" to before drop; 就能恢复。3 删除表: drop ...原创 2013-05-29 13:38:20 · 109 阅读 · 0 评论 -
sql server 2005 存储过程
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONGOdrop proc proc_remove_same_stugocreate proc proc_remove_same_stu asbegindeclare @stuid varchar(500)declare @stuNum intdeclare stuid_cursor...原创 2012-09-04 14:44:06 · 82 阅读 · 0 评论 -
orcale sequence trigger创建自增长字段
--建表TESTcreate table TEST( id number(9), name varchar(30))--建squencecreate sequence TEST_SEQUENCEminvalue 0maxvalue 999999999999999999999999999start with 4increment by...原创 2013-06-04 10:52:24 · 120 阅读 · 0 评论 -
oracle 手动刷新物化视图
--在plsql的命令窗口执行v_czry_group_qx是物化视图名称exec dbms_mview.refresh('v_czry_group_qx');原创 2014-12-29 13:22:34 · 4810 阅读 · 2 评论 -
powerdesigner 将oracle某个用户下的表转化成pdm
说明:1.现有Oracle 10g数据库oracle,其中包含若干张数据表,连接oracle的用户名test,密码为test。2. PowerDesigner版本为12。 第一步是加载odbc驱动:确定环境变量PATH是否添加了oracle配置,一般安装oracle自动添加,若无则在环境变量PATH上添加C:\oracle\product\10.1.0\...\bin...原创 2014-06-26 13:22:54 · 346 阅读 · 0 评论 -
子查询所得的列不能用于where子句
前面已经使用了别名为查询提供更有意义的列名,而且也使用WHERE子句将一些数据排除掉,然而,我们还想在WHERE子句中引用别名。select sal as salary, comm as commissionfrom empwhere salary < 5000解决方案 将查询作为内联视图就可以就可以引用其中别名的列了:select *from...原创 2013-08-12 16:02:55 · 1365 阅读 · 0 评论