
Oracle
jumtre
这个作者很懒,什么都没留下…
展开
-
Oracle查询一段时间内的每一天
select to_date('2018-09-01', 'yyyy-MM-dd') + rownum - 1 as dateday from dualconnect by rownum <= (to_date('2019-01-21', 'yyyy-MM-dd') - to_date('2018-09-01', 'yyyy-MM-dd'));原创 2019-01-21 22:21:27 · 8485 阅读 · 0 评论 -
ORACLE CASE WHEN 及 SELECT CASE WHEN的用法
Case具有两种格式。简单Case函数和Case搜索函数。--简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' E转载 2014-11-03 10:45:58 · 1295 阅读 · 0 评论 -
Oracle带输入、输出参数的存储过程 返回受影响的行数 SQL%ROWCOUNT
CREATE OR REPLACE PROCEDURE PROC_UPDATE_TEMP(P_DAYS IN NUMBER, --执行天数 P_ROWS OUT VARCHAR2, --返回受影响的行数转载 2014-10-27 16:35:43 · 12519 阅读 · 0 评论 -
Oracle用存储过程查询多张表的方法
前用企业库读SQL Server返回数据集没任何问题,可以返回1个也可以返回多个,读Oracle的时候返回一个数据集的时候也没问题,可是最近在用Oracle返回多个数据集的时候却出了问题,几经辗转,终于找到了解决方案,记下来!一定要记下来!千万不可忘记!!!!!!!以下代码在vss2005+oracle10g下测试通过。要使用企业库,肯定先引用喽:cs文件添加三个引用:转载 2014-09-28 13:48:12 · 10405 阅读 · 0 评论 -
Oracle中TO_DATE格式
TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07 yyy three digits 三位年 显示值:007 yyyy four digits 四位年转载 2014-09-28 16:23:46 · 813 阅读 · 0 评论 -
Oracle实现数据不存在则插入,数据存在则更新(insert or update)
思路是写一个函数,先按条件查询数据,如果查询到数据则更新,如果没有查询到数据则插入:create or replace function fn_merge_index(statdate in date, cpid in varchar2,原创 2014-09-28 17:29:10 · 51263 阅读 · 0 评论 -
Oracle中不同语言环境导致to_date出错的问题
写了个存储过程,里面用了个函数,函数里有一段to_date(dateFrom, 'yyyy/mm/dd'),运行后发现数据插入错误,插入的数据为“0001/9/14”。感觉莫名其妙,不知道为什么会是这样的数据,经过调试,发现我在测试窗口输入的日期“2014/9/1”在程序中变成了“01-SEP-14”,瞬间恍然大悟,原来是当做01年9月14日了。 知道了原因就好说了,直接放出解决办法原创 2014-09-28 17:14:00 · 4412 阅读 · 2 评论 -
索引的十一种功能
索引是个既稳定又开放的信息结构,它有十一种功能。1 分解功能把文献中的资料单元(如篇名、机构、短语、概念、物名、地名、书名、人名、字词、符号等)一一分解,这就是索引的分解功能。它是索引工作的起跑线和索引编纂的基础,没有对文献内容的这种分解功能,就没有索引。过去有些反对索引的人说,索引是把古人的著书“凌迟碎割”。他们对索引法的反对,实出于对流传已久的那种落后的皓首穷经的陋习转载 2014-09-25 14:03:01 · 895 阅读 · 0 评论 -
数据库索引的作用和优点缺点
为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能。 第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 第二,可以大大加快 数据的检索速度,这也是创建索引的最主要的原因。 第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 第四,在使用分组和排序 子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。 第五,通过使用索引转载 2014-09-25 13:58:21 · 776 阅读 · 0 评论 -
Oracle控制语句(if , loop , while , for)
--if...then...elsif..then.. else...end ifdeclare num integer; inputno number(10);begin inputno :='&请输入'; select sal into num from scott.emp where empno=inputno; if(num<2000) then转载 2014-11-03 16:21:07 · 1322 阅读 · 0 评论 -
解决“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本”
在用VS.NET2005+Oracle9.2进行开发的时候,在本地测试可以通过,但是在服务器上不能实现(复制网站,发布网站都不行),报错的具体内容,没记下来,大概就是:"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本"在网上查询了很长时间也没有见效,后来综合网上的很多方法,终于测试成功,现分享一下。出错的原因:1.虽然报的是转载 2014-10-20 09:58:35 · 54528 阅读 · 4 评论 -
Oracle中生成GUID类型
Oracle8i引入了SYS_GUID这个概念,它同Oracle管理员所使用的传统的序列(sequence)相比具有诸多优势。一个序列生成器只是简单地创建从给定的起点开始的一系列整数值,而且它被用在选择陈述式的时候自动地递增该系列。 序列生成器所生成的数字只能保证在单个实例里是唯一的,这就不适合将它用作并行或者远程环境里的主关键字,因为各自环境里的序列可能会生成相同的数字,从而导转载 2014-10-31 16:49:11 · 3837 阅读 · 0 评论 -
Oracle 查询库中所有表名、字段名、字段说明,查询表的数据条数、表名
查询所有表名:select t.table_name from user_tables t;查询所有字段名:select t.column_name from user_col_comments t;查询指定表的所有字段名:select t.column_name from user_col_comments t where t.table_name = 'BIZ_DIC...转载 2018-12-04 18:34:54 · 6423 阅读 · 0 评论 -
Visual Studio报错“未在本地计算机上注册"MSDAORA"提供程序”的解决方法
方法一:把网站工程属性→Web→服务器从默认的IIS Express改为IIS,并设置“启用32位应用程序”。点击查看操作方法方法二:改用其他驱动,如“OraOLEDB.Oracle”,相对麻烦一点,我就不写了,网上操作方法很多。方法三:替换Visual Studio目录下的WCF相关文件。VS2008用这个,VS2015用这个。如果系统是64位:原因:在安装VS...原创 2018-10-22 13:48:47 · 5148 阅读 · 0 评论 -
ORACLE-SQL:排序防止NULL影响排序结果的处理方法
1.不加“关照”的order by升序排序效果--NULL值在后。sec@ora10g> select * from t order by x; X---------- 1 2 3 47 rows selected.2.不加“关照”的order by降序排序效果--NULL值在前。转载 2016-05-27 14:23:19 · 3917 阅读 · 0 评论 -
ORACLE多表关联UPDATE 语句
为了方便起见,建立了以下简单模型,和构造了部分测试数据:在某个业务受理子系统BSS中,SQL 代码--客户资料表create table customers(customer_id number(8) not null, -- 客户标示city_name varchar2(10) not null, -- 所在城市customer_type char转载 2015-12-04 20:58:36 · 692 阅读 · 0 评论 -
oracle 多行转一列,一列转多行
有一个表,表名为tab_test,如下:一、多行转一列select id, vnum, to_char(wmsys.wm_concat(vname)) c from tab_test group by id,vnum;执行上述sql后,如下:二、一列转多行with a as (select '/ABC/AA/AD/ABD/JI/CC/ALSKD/AL转载 2015-06-12 17:07:31 · 13644 阅读 · 0 评论 -
Oracle行转列、列转行的Sql语句总结
目录结构如下:行转列列转行[一]、行转列 1.1、初始测试数据 表结构:TEST_TB_GRADE Sql代码 create table TEST_TB_GRADE ( ID NUMBER(10) not null, USER_NAME VARCHAR2(20 CHAR), COURSE VARCHAR2(20转载 2015-06-12 17:11:09 · 28283 阅读 · 0 评论 -
oracle获取某时间段内的年份、月份、日期列表
获取日期列表:SELECT TO_CHAR(TO_DATE('2014-10-01', 'yyyy-MM-dd') + ROWNUM - 1, 'yyyyMMdd') as dayslist FROM DUALCONNECT BY ROWNUM <= trunc(to_date('2015-06-01', 'yyyy-MM-dd') -原创 2015-06-03 14:59:53 · 17844 阅读 · 0 评论 -
oracle函数trunc的使用
1、日期比较时精确到日,可以使用 TRUNC(sysdate,'dd')函数。函数支持格式有:yyyy MM dd hh Mi可以用 select TRUNC(sysdate,'yyyy') from dual 看看结果是什么。不要按下面的方式比较日期:TO_DATE(TO_CHAR(LOGTIME,'YYYY-MM-DD'), 'YYYY-MM-DD')转载 2015-06-23 11:27:26 · 834 阅读 · 0 评论 -
oracle 记录被另一个用户锁住 (附:操作实例)
今天,运行Java后台程序,设置了断点,每到执行SQL语句时,就卡住,执行检查,发现SQL语句并没有问题,程序没没问题,于是把语句拷贝到PL/SQL里面执行,发现还是语句执行了很久都没有结果,于是我中断执行,我使用的是Update语句。 于是我就直接在上面改字段,在点打钩(记入改变)的时候提示,记录被另一个用户锁住,一开始还以为整个表被锁住了,后来发现,仅仅是这个字段不能改变,其他的字段转载 2014-11-05 16:55:39 · 5405 阅读 · 1 评论 -
Oracle存储过程总结(二、字符串处理相关函数)
项目中有涉及存储过程对字符串的处理,所以就将在网上查找到的资料汇总,做一个信息拼接式的总结。以下信息均来自互联网,贴出来一则自己保存以待以后使用,一则供大家分享。字符函数——返回字符值这些函数全都接收的是字符族类型的参数(CHR除外)并且返回字符值.除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.字符函数的返回类型所受的限制和基本数据库类型转载 2014-09-22 15:17:38 · 2074 阅读 · 0 评论 -
Oracle存储过程总结(一、基本应用)
1、创建存储过程create or replace procedure test(var_name_1 in type,var_name_2 out type) as--声明变量(变量名 变量类型)begin--存储过程的执行体end test;打印出输入的时间信息E.g:create or replace procedure tes转载 2014-09-22 15:16:11 · 1033 阅读 · 0 评论 -
使用instantclient_11_2 和PL/SQL Developer工具包连接oracle 11g远程数据库
1,先到Oracle网站下载Instant Client :http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html根据你的操作系统选择不同的Instant Client版本下载回是一个压缩文件,解压之后的文件夹叫:D:/instantclient_11_2.放转载 2014-07-21 11:19:36 · 35028 阅读 · 0 评论 -
完全卸载oracle11g步骤
完全卸载oracle11g步骤:1、 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。2、 开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer,单击“卸载产品”-“全部展开”,选中除“OraDb11g_home1”外的全部目录,删除。5、 运行regedit转载 2014-07-21 10:22:34 · 1301 阅读 · 0 评论 -
oracle通过行范围查询
不能直接用rownum,要查询出来以后用别名转换原创 2014-07-18 17:34:18 · 2146 阅读 · 0 评论 -
在oracle表中怎么获得第5行到第7行的记录
在oracle中表test,记录如下:A---12345678 请问怎么获得第5行到第7行的记录呢?/************************************答案***********************************/select * from can_jsk where rownum转载 2014-07-18 17:40:12 · 2103 阅读 · 0 评论 -
oracle数据库字符串切割split
1 新建数据库类型create or replace type STR_SPLIT as table of varchar2(50);转载 2014-07-18 17:25:27 · 7095 阅读 · 0 评论 -
Oracle字符分隔函数(split)
为了让 PL/SQL 函数返回数据的多个行,必须通过返回一个 REF CURSOR 或一个数据集合来完成。REF CURSOR 的这种情况局限于可以从查询中选择的数据,而整个集合在可以返回前,必须进行具体化。Oracle 9i 通过引入的管道化表函数纠正了后一种情况。表函数是返回整个行的集(通常作为一个集合)的函数,可以直接从 SQL 语句中进行查询,就好像它是一个真正的数据库表一样。管道化表函数转载 2014-07-18 17:24:16 · 1753 阅读 · 0 评论 -
oracle split去逗号,行列转换
1.针对 '1','2','3','4','5'(逗号在字符串外面)转载 2014-07-18 15:48:43 · 6231 阅读 · 0 评论 -
C#连接Oracle数据库的四种方法
目录(?)[-]C连接数据库的四种方法ODBCOleDbOracleClientOracleDataAccess C#连接数据库的四种方法在进行以下连接数据库之前,请先在本地安装好Oracle Client,同时本次测试System.Data的版本为:2.0.0.0。在安装Oracle转载 2014-05-14 15:22:08 · 2873 阅读 · 0 评论 -
64位系统Visual Studio通过IIS调试Web程序报错:未在本地计算机上注册"MSDAORA.1"提供程序
64位操作系统调试程序连接原创 2014-05-14 15:24:57 · 8867 阅读 · 0 评论 -
64位操作系统下Visual Studio连接Oracle数据库 错误ORA-06413
64位操作系统下用visual studio调试使用oraclede转载 2014-07-21 15:01:12 · 8029 阅读 · 0 评论 -
oracle判断是否包含字符串的方法
首先想到的就是contains,contains用法如下:原创 2014-07-21 17:09:03 · 120419 阅读 · 2 评论 -
oracle 字符串替换 去空格
今天学习了一下oracle中如何对字符串进行去除空格的方法,这里总结一下。了解到的方法主要有两种:Trim函数以及Replace函数。下面我详细的介绍一下,这两种用法,不足的地方还望各位朋友补充。 首先便是这Trim函数。Trim 函数具有删除任意指定字符的功能,而去除字符串首尾空格则是trim函数被使用频率最高的一种。语法Trim ( string ) ,参数string:s转载 2014-07-21 20:00:15 · 2315 阅读 · 0 评论 -
Oracle 游标使用全解
这个文档几乎包含了oracle游标使用的方方面面,全部通过了测试转载 2014-09-10 15:09:21 · 1126 阅读 · 0 评论 -
PLSQL Developer报"动态执行表不可访问,本会话的自动统计被禁止"错的解决方法
这个报错信息在不同的PL/SQL Developer版本都会出现,从上面详细的报错提示信息中我们可以判断得到,报错原因不在工具本身。在此,详细记录一下这个小问题的三种处理方法。1.第一种处理方法(不推荐)就是在报错的Error对话框中将“Don't show this message again”选项选中,下次就不在提示这个错误了。这种方法应该可以叫做“鸵鸟方式”的转载 2014-08-25 08:45:53 · 1193 阅读 · 0 评论 -
Oracle中自定义聚集函数
对字符串的“sum”——在Oracle中自定义聚集函数的例子 [引自] http://blog.itpub.net/post/468/3380Oracle的定制功能十分强大。前几天在碰到一个问题的时候,查询文档发现,oracle不但允许用户定制自己的函数,还可以定制自己的聚集函数和分析函数。下面是我使用自定义聚集函数建立一个字符串“sum”的小例子。转载 2014-08-04 14:18:18 · 1721 阅读 · 0 评论 -
Oracle自定义聚集函数
节选自《剑破冰山——oracle 开发艺术》一书,书籍销售地址: http://product.china-pub.com/197199 http://product.dangdang.com/product.aspx?product_id=20981228&ref=book-02-Lhttp://www.amazon.cn/mn/detailApp?uid=477-1785695-2转载 2014-08-04 14:28:40 · 796 阅读 · 0 评论 -
oracle 可grant/revoke的系统权限与对象权限—汇(英文)
With the GRANT statement you can grant: System privileges to users and roles.Roles to users and roles. Both privileges and roles are either local, global, or external.Object privileges for a parti转载 2014-07-24 21:23:13 · 8813 阅读 · 0 评论