
Database
aaa_dai
https://github.com/Song2017
展开
-
存储过程-动态批量更新数据
使用环境Oracle 12c原理自定义类型及函数解析指定格式字符串, 返回table类型数据动态sql拼接待更新数据过滤条件实现自定义类型-- create base typeCREATE OR REPLACE TYPE SPLITSTRINGROW_UNI_TYPEAS OBJECT ( ID NUMBER(5), TOKEN NVARCHAR2(2...原创 2019-05-07 20:16:33 · 1825 阅读 · 0 评论 -
Firebird删除表,触发器,索引前判断是否存在
思路判断系统表中是否存在要删除的对象方法EXECUTE BLOCK + execute statement例子:删除触发器SET TERM ^;EXECUTE BLOCKASBEGINif (exists(SELECT 1 FROM RDB$TRIGGERS Where rdb$trigger_name = 'PARTS_AFTER_CHANGE')) th...原创 2018-03-28 20:20:45 · 1322 阅读 · 0 评论 -
FireBird 设置PageBuffer & Procedure
Top site:http://www.destructor.de/firebird/index.htmSet Database Page Bufferscommand line toolsThe administrative tools that are available with the software are: • gsec - This is the se...原创 2018-03-02 11:16:59 · 470 阅读 · 0 评论 -
FireBird替换已使用的Table的复合主键
PROFILE数据表的主键应该独立于有实际意义的字段,因为实际业务中总会有奇葩的逻辑让你的复合主键(实际意义的数据列)出现重复,为空等等. 更改已存在数据的表的主键的步骤 1, 添加主键列 2, 更新已存在数据行的主键列 3, 删除已存在主键,添加主键到新增主键列 4, Note: 删除主键报错: 索引正在使用 主键自带主键索引,数据库会缓存索引。简单粗原创 2018-02-02 09:29:35 · 533 阅读 · 0 评论 -
PostgreSQL 9.5 学习
安装 OS: ubuntu 16.04apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install postgresql -y -V --no-install-recommends历史postgres: 1986,The Berkeley POSTGRES Project postgres95: In 1994, Andrew原创 2017-06-01 20:18:43 · 1452 阅读 · 0 评论 -
PostgreSQL on Azure 初始使用
publish by Bitnami创建进入potal界面 * New> Marketplace> Compute> PostgreSQL(publisher Bitnami) Bitnami是开源项目不需要money,但azure磁盘管理要,所以乖乖掏钱吧初始程序Ubuntu 14.04.5 LTSPostgreSQL 9.6.0-1 !!! 已经默认安装了文档ostgreSQL的v原创 2017-06-02 19:29:29 · 765 阅读 · 0 评论 -
MySQL简单使用
OS: ubuntu 16.04root@virtualUnbuntu:/home/ben# mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 7Server version: 5.7.17-0ubuntu0.原创 2017-06-12 14:34:07 · 450 阅读 · 0 评论 -
SQL Server 数据库导入导出数据
Data Micration between SQL Server Database1, 减少源数据库的导出数据 - 排除日志表数据: 日志表数据体积大且没有导出价值 - 精简掉备份表: 为了保证数据的安全, 一般会对关键的数据表做一个备份表,例如 XXX.bak - 去掉冗余表: 跟设计人员确认, 去掉没有作用的数据表 - 去掉无效数据2, 目标数据库设置 - 取消约束限原创 2017-09-27 19:12:30 · 24869 阅读 · 0 评论 -
事务的四大特性(ACID)
因为一直记得不全面,所以加了实例加深印象。一、定义1、原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么全部不执行。2、一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。3、隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。4、持久性(D...原创 2014-08-27 16:43:57 · 2111 阅读 · 1 评论 -
Oracle&SQL数据库参数异同
SQLCODE <=> @@ERRORSQLERRM <=> ERROR_MESSAGE()SQL%ROWCOUNT<=>@@ROWCOUNT原创 2016-04-20 10:11:19 · 428 阅读 · 0 评论 -
sql server 2008R2中的事务语句控制
Oracle数据库客户端工具PL/SQL中的SQL Window涉及到DML操作时,当前Window中的sql自动归为一个事务,并且有对应的rollback和commit按钮,sql server数据库也可以实现相同功能,只不过需要显式的事务控制语句.首先,sql server 中的新建查询窗口是一个session,类比PL/SQL中的SQL Window.sql server 事务控原创 2016-05-10 16:31:43 · 1227 阅读 · 0 评论 -
oracle_数据定义语言_ddl
DDL数据库对象 存储在用户(schema)下表 存储的基础单元,行列组成视图 一个或多个表的数据逻辑子集序列 生成数字值索引 提高查询的效率同义词 对象的别名建表命名规则 : 字符开头/汉字也是字符,1-30,_$#,非保留字(加双引号后可以用),create table (schema) tab (col number default 0,b原创 2016-12-02 18:25:56 · 597 阅读 · 0 评论 -
Oracle处理当前行与其之前行
平移: lag/lead over 函数oralce内置的高级函数,可以获取到当前查询结果集中每一行的前几行,相当于做了垂直方向的平移要注意的函数作用域是此次查询结果集,虽然提供了分组的功能,只是对当前结果集的分组lagover samplewith tmp as(select '1' id ,'aa' name ,'19' age from dual union allse...原创 2018-05-23 20:06:35 · 1120 阅读 · 0 评论 -
ORA-01461: can bind a LONG value only for insert into a LONG column
Error infoORA-01461: can bind a LONG value only for insert into a LONG columnORA-06512: at "VKC2.TESTNVARCHAR2", line 8ORA-06512: at line 601461. 00000 - "can bind a LONG value only for insert i...原创 2018-06-25 14:12:18 · 19258 阅读 · 0 评论 -
Oracle 12c expdp&impdp
OSWindowsOracle VersionOracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit ProductionExpdp在c盘创建dump文件夹,允许写以sys用户连接oracle,创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。 create di...原创 2018-07-02 19:58:38 · 4747 阅读 · 0 评论 -
连续出现的数字
编写一个 SQL 查询,查找Logs 表所有至少连续出现三次的数字。+----+-----+| Id | Num |+----+-----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 1 || 6 | 2 || 7 | 2 |+----+-----+CodeSELECT distinct ...转载 2019-04-07 20:55:58 · 355 阅读 · 0 评论 -
部门工资前三高的员工
Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id 。+----+-------+--------+--------------+| Id | Name | Salary | DepartmentId |+----+-------+--------+--------------+| 1 | Joe | 70000 | 1...转载 2019-04-07 20:51:48 · 335 阅读 · 0 评论 -
第N高的薪水
编写一个 SQL 查询,获取 Employee 表中第 n 高的薪水(Salary)。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+CodeCREATE FUNCTION GETNTHHIGHESTSALARY (...转载 2019-04-07 20:48:03 · 179 阅读 · 0 评论 -
SQL查询具有不同条件的多个COUNT语句
sum + case when / decodecodeselect sum (decode (t.status, 'T', 1, 0)) t_status, sum(case when t.dat=sysdate then 1 else 0 end) now_datefrom (select 1 id, 'T' status, sysdate-1 dat from dual un...原创 2019-02-26 11:47:52 · 7542 阅读 · 0 评论 -
C#程序导入导出数据库
oracle 行指令//通过cmd调用oracle行指令导入导出数据库//通过directory导出数据库//创建directory https://blog.youkuaiyun.com/sgs595595/article/details/81066685string expdpcmd = "expdp user_test/user_pass@xe directory=DATA_PUMP_DIR d...原创 2018-12-25 10:44:05 · 1599 阅读 · 0 评论 -
Firebird获取表行数及物理文件体积表示
表的行数获取Firebird所有表及每个表中记录的总行数通过sql获取,直接在FlameRobin中的查询窗口运行set term !! ;EXECUTE BLOCK returns ( stm varchar(60), cnt integer )asBEGINfor select cast('select count(*) from "'||trim(r.RDB$RELATION...原创 2018-10-17 11:09:56 · 592 阅读 · 0 评论 -
收获,不仅仅是Oracle_学习笔记
第一章 意识,少做事,从学习开始Oracle的设计思想及工作原理:少做事.通过分级缓存,减少对磁盘数据的读取.1.2.1A 数据库应用角色a 开发b 管理c 优化d 设计B Oracle基本知识分类a 基本原理 1 体系结构2 物理结构3 表4 索引5,事务b 开发技能 1 SQL2 PL/SQL3 常用函数c 管理知识 1 用户及权限管理2 ...原创 2018-10-10 15:57:01 · 623 阅读 · 0 评论 -
SQL执行过程
工业编码中sql是不可或缺的,编写或优化出高效率的SQL是码农的重要工作,了解SQL的处理过程可以让我们与数据库交互时游刃有余。下面是oracle数据库处理SQL的过程。SQL处理SQL处理是SQL语句的解析、优化、行源生成和执行。为了更快的处理数据,数据库会做一些缓存,从而省略这些阶段中的一些。下图描述了SQL处理的一般阶段。SQL解析解析阶段包括将SQL语句段分割成其他例程可以处理...翻译 2018-10-10 09:40:20 · 6247 阅读 · 0 评论 -
Oracle SQL/Developer SQL Formatter
Oracle SQL/Developer是oracle官方的数据库客户端,相较于PL/SQL,同样也提供美化代码的功能。客户端程序导入格式化模板模板文件下载格式化快捷键Ctrl + ACtrl + F7...原创 2018-09-18 15:29:17 · 1346 阅读 · 0 评论 -
Oracle的行列转换
列转行实现: 内置函数 LISTAGG实例:with tmp as ( select 1 id,'name1' name from dual union all select 2 id,'name2' name from dual union all select 4 id,'name4' name from dual union all...原创 2018-08-06 17:59:47 · 937 阅读 · 0 评论 -
Orace 12c Export local database and import to remote database
Export local database and import to remote databaseExport local database to dmp fileExecute on sql developer client with system rolealter session set &amp;amp;quot;_oracle_script&amp;amp;quot; = true;drop user us...原创 2018-07-16 15:59:17 · 292 阅读 · 0 评论 -
Oracle_函数
单行函数:每一行都有自己的结果;多行函数:最终结果只有一行;字符串函数大写 upper(col);小写 lower(col);首字母大写 initcap(col);非字符数字则认为开始新单词连接函数 concat 只能连接两个表达式,连接符 ||截取字符 substr('asdsds',+-1,2),正反首位开始截取两个字原创 2016-10-27 20:30:45 · 357 阅读 · 0 评论 -
oracle_多表查询&子查询
多表查询 减少存储资源浪费,数据重复高的独立出一个表连接类型内连接 natural inner join using on where自然连接 :自动找数据类型和列名一致的关联,否则进行笛卡尔关联select * from t natural join t2;数据类型不一致,列名一致的关联, usingselect * fro原创 2016-10-31 10:42:55 · 1765 阅读 · 0 评论 -
OCP052_100_Situations in Which Direct Path Load Is Not Used(译)
100. In which situations does the Oracle Data Pump use external tables and not the direct pathload whileexporting a table? (Choose all that apply.)A.if a table is not in a clusterB.if a table has翻译 2016-07-08 18:04:02 · 521 阅读 · 0 评论 -
Oracle_获取动态sql的值 EXECUTE IMMEDIATE.. INTO ..
BEGIN DECLARE ls_sql VARCHAR2(4000); ln_cnt INT; BEGIN ln_cnt := 0; ls_sql := 'select count(*) from (select 1 from dual) a '; EXECUTE IMMEDIATE转载 2016-04-18 11:55:45 · 8287 阅读 · 0 评论 -
Oralce default对数据影响测试
--创建并插入5条数据CREATE TABLE tabTest AS SELECT ROWNUM col,ROWNUM || ROWNUM col2 FROM dual CONNECT BY LEVEL < 6;SELECT * From tabTest; --添加非空列--新增非空列,会自动添加默认值ALTER TABLE tabtest ADD notnull INT DEFA原创 2016-06-24 17:09:40 · 483 阅读 · 0 评论 -
OCP_052_51 automate this configuration for the memory components with change in mode of working
51. In a system, large online transaction processing (OLTP) jobs run during the daytime that require alarge database buffer cache. In the night, the system supports batch jobs that require a higher原创 2016-06-24 09:52:19 · 448 阅读 · 0 评论 -
oracle 存储过程中调用存储过程
A,较sql server中区别 : 1,无exec2,无output3,添加()B,oracle存储过程的入参1,纯输入参数可以引用其值,但不可以赋值 解决:建立本地参数暂存其数据,然后操作本地参数2,输出参数可赋值,可引用CREATE OR REPLACE PROCEDURE P_AM_WOSORD_SET_LOG( AS_USERID VA原创 2016-04-18 15:55:47 · 1762 阅读 · 0 评论 -
oracle decode函数,取两个日期中的较大值
decode(条件, 值1, 翻译值1, 值2, 翻译值2, ...值n, 翻译值n, 缺省值)【功能】根据条件返回相应值【参数】c1, c2, ..., cn, 字符型 / 数值型 / 日期型,必须类型相同或null注:值1……n 不能为条件表达式, 这种情况只能用case when then end解决·含义解释:decode(条件, 值1, 翻译值1, 值2, 翻译值2, ...原创 2015-11-21 15:04:57 · 18954 阅读 · 0 评论 -
Oracle connect by..start with/level
--connect by..level--表行数 r,查询到层数 l,则查询结果集行数 R = r^l+r^(l-1)+...r^2+r.--特别的行数为2时, 结果集行数 R = 2^(l+1) - 2;-- level 表示 目前递归的 层次。with x As (select 'aa' Chr from dual union All select 'bb' chr原创 2016-03-18 16:07:59 · 637 阅读 · 0 评论 -
oracle 参数游标和存储过程的结合使用
CREATE OR REPLACE PROCEDURE p_cursor_test(AS_XTDBMC Varchar2, as_yhdm Varchar2) AS as_ztmc VARCHAR2(255); LN_COUNT NUMBER; ncnt NUMBER; -原创 2015-11-24 17:09:00 · 2227 阅读 · 0 评论 -
oracle 函数 trunc
/*trunc(x[,y])【功能】返回x按精度y截取后的值【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位, 小数前其它数据用0表示。【返回】数字*/Select Trunc(12.5123) As truncnum, Trunc(12.5123, 6) As truncnum,原创 2015-12-11 18:24:17 · 375 阅读 · 0 评论 -
oracle游标:fetch和for循环游标
1,fetch 显式的open,closeDeclare Cursor cur Is Select xtwldm From xtm14; curRow cur%Rowtype;Begin Open Cur; Loop Fetch cur Into currow; Exit When cur原创 2015-11-18 14:47:17 · 2367 阅读 · 1 评论 -
oracle PL\SQl基础 变量的使用
一:类型标量类型变量:单一类型,不存在组合符合类型变量:单一类型组合而成的一个结构体引用类型变量:使用一个其他数据项的引用原创 2016-01-13 08:43:57 · 541 阅读 · 0 评论 -
oracle内置函数 NVL (expr1, expr2),NVL2 (expr1, expr2, expr3)
/*【语法】NVL (expr1, expr2)【功能】若expr1为NULL,返回expr2;expr1不为NULL,返回expr1。注意两者的类型要一致 【语法】NVL2 (expr1, expr2, expr3) 【功能】expr1不为NULL,返回expr2;expr1为NULL,返回expr3。 expr2和expr3类型不同的话,expr3会转换为expr2的类型 */S原创 2015-12-16 17:01:38 · 1447 阅读 · 0 评论