
oracle
IT静心修行
要学习忍者神龟的性格
展开
-
IT忍者神龟之oracle高级CRUD
SQL Cookbook—插入、更新与删除原创 2014-09-19 13:07:15 · 944 阅读 · 0 评论 -
IT忍者神龟之Instant client required
pply OS : Windows, Mac, LinuxApply Navicat Product : Navicat for Oracle, Navicat PremiumApply Navicat Version No. : AllInstant Client package is required for Basic and TNS connection typ原创 2014-10-23 16:25:46 · 2222 阅读 · 0 评论 -
IT忍者神龟之 oracle行转列、列转行
一、行转列需要将如下格式转换为: 这就是最常见的行转列,主要原理是利用decode函数、聚集函数(sum),结合group by分组实现的 [sql] view plaincopycreate table test( id varchar2(255) primary key not null, name var原创 2014-10-09 16:28:12 · 1077 阅读 · 0 评论 -
IT忍者神龟之oracle 集合的使用
每组查询均能得到其结果集,若需将多个查询结果合并成一个结果集,则可利用集合运算来实现。如并集(UNION)、并集且不去除重复行(UNOIN ALL)、交集(INTERSECT)、差集(MINUS)。集合命令的目的是将两个(含以上)SQL语句产生的结果合并。由于需要将两个(含以上)数据集合并因此字段数量必须相等,且类型也必须兼容。如果字段数量无法相同,可以将不足部分以NULL值取代,原创 2014-10-09 16:42:09 · 798 阅读 · 0 评论 -
IT忍者神龟之数据库采用select方式拼接insert
有这样一种情景,在正规的公司中,由于维护人员对于某个公司正式环境的数据库只有查询的操作,没有更新或者下载的操作,但是需要从正式环境导出一份数据到另外的测试环境上,如何实现,下面这种方法可以参考:方法:[sql] view plaincopyselect "insert into zq_department values ( "原创 2014-10-29 11:10:11 · 564 阅读 · 0 评论 -
IT忍者神龟之详细讲解提高数据库查询效率的实用方法
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查原创 2014-10-29 11:13:46 · 452 阅读 · 0 评论 -
IT忍者神龟之一句sql语句——连接同一字段的所有值
Oracle可以用SYS_CONNECT_BY_PATH字符串聚合函数:SELECT LTRIM(MAX(SYS_CONNECT_BY_PATH(productname, ', ')), ', ') AS productnameFROM( SELECT '1' as id, productname, ROW_NUMBER() OVER (PARTITION BY '1'原创 2014-11-07 13:35:38 · 1515 阅读 · 0 评论 -
IT忍者神龟之Oracle查询树形结构
Oracle中的select语句可以用START WITH...CONNECT BY PRIOR子句实现递归查询,connect by 是结构化查询中用到的,其基本语法是:-------------------------------------------------------------------------------------select * from 表名start w原创 2014-11-07 11:03:56 · 908 阅读 · 0 评论 -
IT忍者神龟之mysql与oracle的对比
一、连接查询 1.内连接 内连接用于返回满足连接条件的所有记录。默认情况下,在执行连接查询时如果没有指定任何连接操作符,那么这些连接查询都属于内连接。 Sql代码 1. SELECT a.dname,b.ename from dept a,emp b where a.deptno=b.deptno and a.deptno=10; 在F原创 2016-04-08 08:30:34 · 351 阅读 · 0 评论 -
IT忍者神龟之date日期回顾
Calendar cal = Calendar.getInstance();cal.get(Calendar.DAY_OF_MONTH);cal.get(Calendar.MONTH);cal.get(Calendar.YEAR);SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");Str原创 2014-09-25 14:55:09 · 710 阅读 · 0 评论 -
IT忍者神龟之oracle 在分组内排序的方法回顾
oracle分析函数十分强大,我们只要掌握这些方法,更直接的说法就是知道这些分析函数的作用就能完成很多工作。下边贴出这些函数,及简单应用。其中我想对lag()和lead()函数坐下说明:lag()本身是延后的意思也就是延后出现某列的数,而lead()有引领、领先的意思也就是提前几行显示某列数据RANK()dense_rank()【语法】RANK ( ) OVER ( [qu原创 2014-09-25 11:47:09 · 1357 阅读 · 0 评论 -
IT忍者神龟之数据库备份还原技术总结
1. exp/imp (导出与导入装库与卸库)1.1 基本命令1. 获取帮助$ exp help=y$ imp help=y2. 三种工作方式(1)交互式方式$ exp // 然后按提示输入所需要的参数(2)命令行方式$ exp user/pwd@dbname file=/oracle/test.dmp full=y // 命令行中输入所需的参数(3)参数文原创 2014-09-22 09:41:23 · 1042 阅读 · 0 评论 -
IT忍者神龟之oracle connect by用法回顾
先用scott用户下的emp表做实验.emp表有个字段,一个是empno(员工编号),另一个是mgr(上级经理编号)下面是表中所有数据1select *from emp start with empno=7698connect by mgr=prior empno;执行结果如下:原创 2014-09-19 12:43:55 · 791 阅读 · 0 评论 -
IT忍者神龟之关于oracle with as用法终结
with as语法–针对一个别名with tmp as (select * from tb_name)–针对多个别名with tmp as (select * from tb_name), tmp2 as (select * from tb_name2), tmp3 as (select * from tb_name3), …原创 2014-09-19 12:46:15 · 930 阅读 · 0 评论 -
IT忍者神龟之Oracle DBA常用查询吐血列举
–1. 查询系统所有对象select owner, object_name, object_type, created, last_ddl_time, timestamp, statusfrom dba_objectswhere owner=upper('scott')–2. 查看系统所有表select owner, table_name, tablespace_name原创 2014-09-19 12:50:00 · 881 阅读 · 0 评论 -
IT忍者神龟之oracle中斜杠(/)的含义吐血
斜杠就是让服务器执行前面所写的sql脚本。如果是普通的select语句,一个分号,就可以执行了。但是如果是存储过程,那么遇到分号,就不能马上执行了。这个时候,就需要通过斜杠(/)来执行。12345set serveroutputon;begin dbms_output.put_line('原创 2014-09-19 12:50:59 · 1081 阅读 · 0 评论 -
IT忍者神龟之oracle系统包——dbms_job用法(oracle定时任务)别用etl了
用于安排和管理作业队列,通过使用作业,可以使ORACLE数据库定期执行特定的任务。一、dbms_job涉及到的知识点1、创建job:variable jobno number;dbms_job.submit(:jobno, —-job号 'your_procedure;',—-执行的存储过程, ';'不能省略原创 2014-09-19 12:53:37 · 697 阅读 · 0 评论 -
IT忍者神龟之oracle系统包——dbms_alert用法
oracle内部提供的在数据库内部和应用程序间通信的方式有以下几种:1.警报,就是DBMS_ALERT包提供的功能;2.管道,由DBMS_PIPE提供;3.高级队列,这个就很复杂,当然提供的功能也是很高级的。当然还可以使用外部过程,比如用PL/SQL封装外部的基于C的DLL或JAVA也能实现数据库和应用程序间的通信。 要使用这些功能,必须知道各个功能的特点,根据需要选用。 警报和事原创 2014-09-19 12:55:00 · 584 阅读 · 0 评论 -
IT忍者神龟之oracle存储过程中is和as区别描述
在存储过程(PROCEDURE)和函数(FUNCTION)中没有区别;在视图(VIEW)中只能用AS不能用IS;在游标(CURSOR)中只能用IS不能用AS。原创 2014-09-19 12:54:34 · 671 阅读 · 0 评论 -
IT忍者神龟之oracle系统包 dbms_output用法
dbms_output包主要用于调试pl/sql程序,或者在sql*plus命令中显示信息(displaying message)和报表,譬如我们可以写一个简单的匿名pl/sql程序块,而该块出于某种目的使用dbms_output包来显示一些信息。涉及到的知识点如下:1、enable:在serveroutput on的情况下,用来使dbms_output生效(默认即打开)2、dis原创 2014-09-19 12:52:16 · 556 阅读 · 0 评论 -
IT忍者神龟之数据库设计规范
1. 数据库设计基本规范领域驱动表内容划分,一个领域内容的放在一个表内一套应用表或者一张表,最基本要满足第三范式要求对于基础服务的表,要满足BC范式的要求2. 表名规范同一个应用(或领域)下的表,要有相同的前缀,如:tb_share, tb_position,tb_valuation 数据库设计原创 2017-04-13 09:54:18 · 507 阅读 · 0 评论