
Oracle
云烟,不再年轻
积累是一个漫长的过程,它足以可以让你写出N本书的内容
展开
-
PL/SQL开发中动态SQL的使用方法
内容摘要:在PL/SQL开发过程中,使用SQL,PL/SQL可以实现大部份的需求,但是在某些特殊的情况下,在PL/SQL中使用标准的SQL语句或DML语句不能实现自己的需求,比如需要动态建表或某个不确定的操作需要动态执行。这就需要使用动态SQL来实现。本文通过几个实例来详细的讲解动态SQL的使用。 本文适宜读者范围:Oracle初级,中级 系统环境: OS:windows 2000原创 2006-10-26 22:14:00 · 1296 阅读 · 0 评论 -
Oracle 中的nvl() 函数 相当于Sql Server 的 isnull()
比如下面这句 select nvl(max(ver),0) from PD_YEARTHROUGHPUT where productionyear=2009 当max(ver) 为null时,会用0取代原创 2009-05-13 11:26:00 · 3084 阅读 · 1 评论 -
用cmd命令行导数据
Imp hbtest/hbtest@moms file=d:/hj.dmp fromuser=moms touser=hbtest 也可以用PL/SQL Developer "工具"->"导入表"原创 2010-05-27 15:50:00 · 1168 阅读 · 0 评论 -
oracle 中删除重复数据
oracle 中删除重复数据原创 2010-08-11 15:58:00 · 1179 阅读 · 0 评论 -
pl/sql update子查询
pl/sql update子查询原创 2010-08-26 14:12:00 · 3086 阅读 · 0 评论 -
一个很好用的sql在线美化器
PLSQL Developer原创 2010-12-29 10:38:00 · 14852 阅读 · 0 评论 -
修改文件注册数据库连接配置,可不在Net Manager里配置
修改文件注册数据库连接配置,可不在Net Manager里配置原创 2010-11-15 17:13:00 · 1365 阅读 · 1 评论 -
Oracle存储过程中使用临时表的替代方案
近日接手一个分析类老项目改造工作,用户要求使用Oracle数据库(原先版本为SQL Server2005),由于原项目中大量使用存储过程实现复杂的业务数据查询,在SQL Server中由于使用表值函数、临时表等非常方便,所以当时实现起来并不费事,而现在转为Oracle就不一样了,限制太多(说实话:甲骨文的东西实在没有微软的用起来舒服)。比如存储过程吧,直接建临时表,再往里面塞加工后数据,Oracl转载 2012-01-17 15:16:13 · 5515 阅读 · 0 评论 -
Oracle 创建表空间,用户,权限分配脚本
--1. create tablespacecreate tablespace hmlp datafile 'D:\oracle\product\10.2.0\oradata\orcl\hmlp.dbf' size 200m autoextend on next 10m maxsize unlimited; alter database datafile 'D:\oracle\product\10原创 2013-05-20 10:45:17 · 1256 阅读 · 0 评论 -
Oracle的ole db连接字符串
Provider=msdaora;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.10.59.22)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=ORCL)));User Id=hmlpuser;Password=beyondsoft;Unicode=True原创 2013-06-14 14:30:22 · 3913 阅读 · 0 评论 -
oracle实现id自增长
在表单增加数据时不需要用户输入id值,是通过自增加来实现的实现方法:--先建一个序列号:create sequence autoidincrement by 1start with 1minvalue 1maxvalue 9999999--建立一个触发器 create trigger trg_bs_company before insert on bs_company转载 2013-10-30 10:02:50 · 1226 阅读 · 0 评论 -
ORACLE行转列通用过程
1.使用视图123456789101112131415161718192021222324252627create or replace procedure row_to_col(tabname in varchar2, group_col in varchar2,转载 2014-01-16 09:02:03 · 1229 阅读 · 0 评论 -
数据库存储树形结构的数据
最近接触树形结构数据非常的多,几乎超过了过去8年多,开发所有系统的总和.本来嘛,一般的递归就可以解决了,可是这个系统中总是需要频繁的访问树结点,及父结点,子结点,动不动就要递归,且树的使用非常之多,做的多了搞的人都要呕吐了,下面在网上找到几篇比较有用的资料,记录汇总一下.首先,数据库不一定要用传统的关系型数据库,因为传统关系库有一些很难做到或者做起来非常麻烦的功能,尤其是父子关系特别复杂的时候,这原创 2014-02-05 15:28:26 · 33325 阅读 · 1 评论 -
左右编码树的通用SQL语句
关于左右编码树,看我转载的一片文章http://blog.youkuaiyun.com/lee576/article/details/18939657左右编码树的好处不多说了,下面是操作左右树的SQL假设有如下数据表ResultID为表主键,LeftID为左值编码,RightID为右值编码-- 查询树节点(带级别),按照前序遍历排序SELECT tree2.ResultID , tree2原创 2014-04-21 23:02:01 · 1507 阅读 · 0 评论 -
非常好的SQL格式化工具SQL Pretty Printer
该工具的web版 点击 以前若干年都是用这个,最近发现老是各种问题,打不开,或者网页刷新慢,让人难以忍受,最近竟然找到了这个公司开发的桌面版,功能也强大丰富不少 优快云原来已有下载 SQL Pretty Printer 3.2.5原创 2015-11-18 15:24:02 · 9875 阅读 · 3 评论 -
Oracle update......where......子句
update MT_EQ_EQUIPALLOCATION set gdzch0 = (select distinct puborgcode || substr(ygdzch, 6, length(ygdzch) - 5) from mt_pb_org t1, MT_EQ_EQUIPA原创 2009-07-17 10:31:00 · 1906 阅读 · 0 评论 -
把表变成编辑状态
在PL/SQL Develop 里面可以select这个表,然后编辑它,有两种方法 select t.*,rowid from yourtable select * from yourtable for update原创 2009-02-19 20:07:00 · 1724 阅读 · 0 评论 -
oracle中,如何插入包含单个撇号的数据
nsert into table values(fifth products name,25,05-MAY-07);该语句会报错:ORA-01756:quoted string not properly terminated想插入包含单个撇号的数据,必须进行以下两个操作:在INSERT前执行set scan off命令,并且在想插入单个撇号的文本串位置插入两个撇号。命令如下:原创 2008-10-21 12:30:00 · 3238 阅读 · 0 评论 -
快速分页存储过程
create PROCEDURE DotNetPagination --完成分页功能 ( Pindex in number, --分页索引 Psql in varchar2, --产生dataset的sql语句 Psize in number, --页面大小 Pcount out number, --返回分页总数 v_cur out type_cur --返回当前页数据记录 ); --------原创 2006-10-26 22:19:00 · 1466 阅读 · 0 评论 -
ORACLE 与SQL SERVER SQL语言比较
数据类型比较 类型名称 Oracle SQLServer原创 2006-10-29 21:28:00 · 4842 阅读 · 0 评论 -
一个ORACLE导入和导出XML文件的例子
导入:/*****************************************************************************过程名称:add_to_stockmarket参数1:fileName in varchar2 接收用户输入的xml文件名功能:将xml文件中的数据导入到Stockmarket数据表中***************************原创 2007-03-13 20:36:00 · 3058 阅读 · 0 评论 -
公布Oracle端口映射源码,并加以例程说明
从这里到end. 为一个单元,可以copy到delphi中保存{----------------------------------------------------------------------------- Unit Name: IdMappedOra Author: LCK------------------------------------------------转载 2007-11-12 10:43:00 · 2227 阅读 · 0 评论 -
Sql Server上建Oracle链接服务器
exec sp_addlinkedserver @server=ORACLEDB, @srvproduct=Oracle, @provider=MSDAORA, @datasrc=ROADSMS --该参数为使用sqlplus登录时的主机字原创 2007-11-16 15:43:00 · 1212 阅读 · 0 评论 -
我的sql server与oracle数据同步方案
说到同步,其实是靠"作业"定时调度存储过程来操作数据,增,删,改,全在里面,结合触发器,游标来实现,关于作业调度,我使用了5秒运行一次来实行"秒级作业",这样基本就算比较快的"同步"我做的是sql server往oracle端同步,先在sql server上建立往oracle端的链接服务器,我用一个视图"封装"了一下链接服务器下的一张表create view v_ora_PUBLISHLA原创 2007-12-18 15:29:00 · 2982 阅读 · 1 评论 -
oracle 中生成随机数
SELECT DBMS_RANDOM.VALUE(下限﹐上限) FROM DUAL;例﹕取10到20之间的随机数 select dbms_random.value(10,20) from dual; 取1到3之间的随机整数 select ceil(dbms_random.value(0,3)) from dual; select trunc(dbm原创 2008-07-16 14:13:00 · 943 阅读 · 0 评论 -
近期写的一个比较罗嗦的Oracle after update触发器
CREATE OR REPLACE TRIGGER TRG_PRODUCTLIST_UPDATEAFTER UPDATE OF ISPUBLISHON PRODUCTLISTFOR EACH ROW declare ProvideNo ProvideInfo.ProvideNo%type; InfoTitle ProvideInfo.InfoTitle%type; FarmPr原创 2008-07-16 17:01:00 · 2034 阅读 · 0 评论 -
在ORACLE中实现SELECT TOP N的方法
1.在ORACLE中实现SELECT TOP N 由于ORACLE不支持SELECT TOP语句,所以在ORACLE中经常是用ORDER BY跟ROWNUM的组合来实现SELECT TOP N的查询。 简单地说,实现方法如下所示: SELECT 列名1...列名n FROM (SELECT 列名1...列名n FROM 表名 O转载 2008-07-21 16:30:00 · 1852 阅读 · 0 评论 -
查看ORACLE表的列结构
在 SQLPLUS中,直接用 DESC[ribe] tablename 即可。可要是在外部应用程序调用查看ORACLE中的表结构时,这个命令就不能用了。只能用下面的语句代替:看字段名与数据类型 select * from cols WHERE TABLE_name=upper(table_name); (user_tab_columns缩写cols)转载 2008-07-21 16:26:00 · 3574 阅读 · 0 评论 -
无法为表空间 某某XX 中的段创建 INITIAL区
如果出现这个警告,说明表空间空间不够了,应向表空间添加数据文件或者增大表空间已有的数据文件大小.原创 2008-06-24 17:31:00 · 5925 阅读 · 2 评论 -
ORACLE触发器
http://www.zw1840.com/oracle/translation/concepts/html/22.Triggers.htmhttp://www.zw1840.com/oracle/index.htm 触发器是特定事件出现的时候,自动执行的代码块。类似于存储过程,触发器与存储过程的区别在于:存储过程是由用户或应用程序显式调用的,而触发器是不能被直接调用的。功原创 2008-07-02 15:37:00 · 1786 阅读 · 0 评论 -
oracle日期处理完全版
TO_DATE格式复制内容到剪贴板代码:Day:dd number 12dy abbreviated friday spelled out fridayddspth spelled out, ordinal twelfthMonth:mm number 03mon abbreviated marmonth spelled out marchYear:原创 2008-10-16 13:20:00 · 1381 阅读 · 0 评论 -
oracle 日期经常用到的转换
1、转换函数与date操作关系最大的就是两个转换函数:to_date(),to_char()to_date() 作用将字符类型按一定格式转化为日期类型:具体用法:to_date(2004-11-27,yyyy-mm-dd),前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。如;to_date(2004-11-27 13:34:43, yyyy-mm-dd hh24:mi:s原创 2008-10-16 13:22:00 · 1804 阅读 · 0 评论 -
PL/SQL 取每个分组第N条记录
下面是一个例子,按 CHARLINENAME 分组,按 STOPTIME 排序,最后去分组第一个 where rn = 1select * from (SELECT ROW_NUMBER() OVER(PARTITION BY CHARLINENAME ORDER BY STOPTIME DESC) RN, T.* FROM T_STOPLINE原创 2017-10-30 14:17:49 · 1034 阅读 · 0 评论