
数据库
文章平均质量分 72
David锋
这个作者很懒,什么都没留下…
展开
-
存储过程记录异常日志信息
-- Create tablecreate table SP_SO_SO_PROC_ERR_LOG( log_id NUMBER not null, module_name VARCHAR2(200), proc_name VARCHAR2(4000), err_time DATE, sql_code VARCHAR2(50), sql_errm VARCHAR2(500), err_content VARCHAR2(4000));-- ...原创 2021-08-31 11:02:11 · 490 阅读 · 0 评论 -
ORACLE WITH子句与未公开HINT MATERIALIZE
l id="commonList"> WITH D AS( SELECT /*+materialize*/ * FROM ( SELECT INNER_TABLE.*, ROWNUM OUTER_TABLE_ROWNUM FROM ( SELECT D.* FROM SP_SO_O...原创 2019-07-09 16:27:59 · 646 阅读 · 0 评论 -
SQL ordered by Elapsed Time
1、查询oracle快照select t.snap_id as snap_id, to_char(t.startup_time, 'yyyy-mm-dd hh24:mi:ss') as "SQL第一次执行时间", to_char(t.begin_interval_time, 'yyyy-mm-dd hh24:mi:ss') as "快照开始时间", ...原创 2019-05-16 18:04:21 · 8955 阅读 · 0 评论 -
ORCAL 分页SQL
SELECT * FROM (SELECT INNER_TABLE.*, ROWNUM OUTER_TABLE_ROWNUM FROM ...原创 2019-04-22 19:05:09 · 307 阅读 · 0 评论 -
Oracle根据经纬度查询附近范围内的数据
SELECT * FROM SP_SO_ESLCS_STATION_HOUSE WHERE SQRT( (((114.0628672 - LNG) * ACOS(-1) * 12656 * COS(((114.0628672 + LNG) / 2) * ACOS(-1) / 180) / 180) * ...原创 2019-03-26 17:18:49 · 3326 阅读 · 3 评论 -
SUMC函数 子表转成一行显示
CREATE OR REPLACE FUNCTION SUMC (input VARCHAR2) RETURN VARCHAR2 PARALLEL_ENABLE AGGREGATE USING TypeSumVarchar; CREATE OR REPLACE TYPE "TYPESUMVARCHAR" ...原创 2019-01-29 11:22:15 · 351 阅读 · 0 评论 -
ORCAL MERGE INTO高性能函数
MERGE INTO DPPS_ENERGYCONSUMER_TARGET A USING (SELECT A.* FROM (SELECT ROW_NUMBER() OVER(PARTITION BY LINENAME ORDER BY CREATEDATE DESC, YG DESC, DL DESC, DLZCZ DESC) RN, ...原创 2018-12-24 17:05:14 · 227 阅读 · 0 评论 -
orcal job定时器
beginDBMS_SCHEDULER.create_job(job_name => 'JOB_P_GPIP_UPDATE_FEEDER_DL',job_type => 'STORED_PROCEDURE',job_action => 'P_GPIP_UPDATE_FEEDER_DL',start_date =>sysdate,enabled=>TRU...原创 2018-12-24 17:03:16 · 179 阅读 · 0 评论 -
PLSql 在Command Windows执行SQL时遇到因空行不执行的问题
PLSql 在Command Windows执行SQL时遇到因多一个空行,导致某些SQL语句不会执行的问题软件版本:Oracle:10g 10.2.0.1PLSql:10.0.5.17故障现象在一大段SQL语句,拷贝到Command Window中执行时,发现有一些语句没有得到执行,但同样的SQL语句在SQL Window里可以得到全部执行,但是在Command WIndows中...原创 2018-11-14 15:27:05 · 1946 阅读 · 0 评论 -
orcal 游标使用
1.创建异常记录表CREATE OR REPLACE PROCEDURE record_proc_err_log(module_name varchar2, proc_name varchar2, v_SQLCODE varchar2, v_SQLERRM varchar2, ...原创 2018-11-07 18:12:24 · 262 阅读 · 0 评论 -
自治事务 PRAGMA AUTONOMOUS_TRANSACTION;
数据库事务是一种单元操作,要么是全部操作都成功,要么全部失败。在Oracle中,一个事务是从执行第一个数据管理语言(DML)语句开始,直到执行一个COMMIT语句,提交保存这个事务,或者执行一个ROLLBACK语句,放弃此次操作结束。 事务的“要么全部完成,要么什么都没完成”的本性会使将错误信息记入数据库表中变得很困难,因为当事务失败重新运行时,用来编写日志条目的INSERT语句还未完成。...原创 2018-10-25 19:17:19 · 204 阅读 · 0 评论 -
oracle 先分组后获取每组时间最大值
用户每次登陆都会向表中插入一个登录日期,现在需要获取最近N位登录的用户及登陆时间, 因此现根据用户进行分组,然后在求出每组中最大的日期SELECT a."RN",a."ID",a."USERCODE",a."LOGINTIME",a."BZ",a."DQCODE" FROM (SELECT ROW_NUMBER() OVER(PARTITION BY usercode ORD原创 2018-10-10 16:35:26 · 7838 阅读 · 1 评论 -
oracle 表数据误更新 (flashback )闪回操作
--oracle 表误更新 闪回操作 测试环境--select * from v$database;--select * from v$version;操作第一步1.如下命令启用行迁移alter table test_a enable row movement;2.如下命令闪回到某时间点flashback table test_a to timestamp to_t...原创 2018-10-11 10:23:22 · 399 阅读 · 0 评论 -
oracle数据库用DBLINK连接另一个数据库
方法一:create database link xxx----即将建立的dblink名connect to 数据库用户名 identified by "密码"using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xx-----数据库IP)(PORT = 1521)))...原创 2018-10-11 10:19:15 · 13426 阅读 · 0 评论 -
时间交叉查询和不交叉查询
时间交叉查询:<if test="applyBeginDate != null"> AND APPLY_END_DATE >= TRUNC(#{applyBeginDate}) <if test="applyEndDate == null"> AND TRUNC(#{applyBeginDate})+1 > D.APPLY_BEGIN_DA...原创 2018-06-28 10:15:59 · 736 阅读 · 0 评论 -
开始时间和结束时间交集查询
写法一: AND( ( CONFIRM_BEGIN_TIME between #{confirmBeginDate} and TRUNC(#{confirmEndDate})+1 ) OR ( CONFIRM_END_TIME between #{confirmBeginDate} and TRUNC(#{confirmEndDate})+1 ...原创 2018-05-15 16:50:25 · 1520 阅读 · 1 评论 -
根据表名自动生成VO,快速搞定VO类
SELECT '/*** ' || c.comments || '*/ ' || '@Column(name = "' || A.COLUMN_NAME || '") ' || decode(a.DATA_TYPE, 'DATE', 'private Date', 'NUMBER'...原创 2018-05-03 14:36:19 · 3996 阅读 · 0 评论