oracle
真我的风采i
java软件开发工程师
心灵鸡汤:
程序员的一生时间90%是用在编程上,而剩余的10%是活在世界上。
展开
-
数据库事务的四大特性以及事务的隔离级别
本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响转载 2017-05-16 21:53:30 · 422 阅读 · 0 评论 -
oracle- the account is locked
在sys登陆sqllus下解锁即可。sys asdba;pwd;ALTER USER myuser ACCOUNT UNLOCK;ALTER USER myuser IDENTIFIED BY newpassword;原创 2017-03-02 17:08:04 · 241 阅读 · 0 评论 -
oracle删除用户及表空间
步骤一: 删除userdrop user ×× cascade说明: 删除了user,只是删除了该user下的schema objects,是不会删除相应的tablespace的。步骤二: 删除tablespaceDROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;原创 2017-03-02 17:36:23 · 721 阅读 · 0 评论 -
oracle 查看用户所在的表空间
查看当前用户的缺省表空间 SQL>select username,default_tablespace from user_users; 查看当前用户的角色 SQL>select * from user_role_privs; 查看当前用户的系统权限和表级权限 SQL>select * from user_sys_privs; SQL>s转载 2017-03-02 18:01:26 · 228 阅读 · 0 评论 -
oracle存储过程中is和as的区别
create or replace procedure imp_person_medical(v_t_table_name varchar2,v_result out varchar2) as/**参数:v_t_table_name 临时数据表*/v_sql varchar2(2000);v_error_count number;begin----原创 2017-02-28 22:49:26 · 10804 阅读 · 0 评论 -
Oracle 增加修改删除字段
添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….);修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….);删除字段的语法:alter tab转载 2017-02-28 17:14:27 · 645 阅读 · 0 评论 -
oracle查询表空间下的所有用户
select * from v$tablespace;0 SYSTEM YES NO YES1 SYSAUX YES NO YES2 UNDOTBS1 YES NO YES4 USERS YES NO YES3 TEMP NO NO YES6 EXAMPLE YES NO YES7 AYD YESNO YES8 AYD原创 2017-04-02 11:25:53 · 3667 阅读 · 0 评论 -
oracle cols 查询表字段类型及长度 function
select table_name,column_name,data_type,data_length FROM cols where table_name='TEST_DATATYPE'; 表名区分大小写转载 2017-02-28 17:05:58 · 1137 阅读 · 0 评论 -
oracle loop 详解
在PL/SQL中可以使用LOOP语句对数据进行循环处理,利用该语句可以循环执行指定的语句序列。常用的LOOP循环语句包含3种形式:基本的LOOP、WHILE...LOOP和FOR...LOOP。 LOOP语句的基本语法结构如下:[>]LOOP statement...END LOOP [label_name]【语法说明】label_name>>:LOOP结构的标签转载 2017-02-28 15:44:14 · 4601 阅读 · 0 评论 -
oracle 中 set serveroutput on
使用set serveroutput on 命令设置环境变量serveroutput为打开状态,从而使得pl/sql程序能够再SQL*plus中输出结果在编写存储过程时,有时会用dbms_output.put_line将必要的信息输出,以便对存储过程进行调试,只有将serveroutput变量设为on后,信息才能显示在屏幕上。原创 2017-02-28 15:19:27 · 2244 阅读 · 0 评论 -
oracle 导入导出dmp数据
1.导入imp cd_zhzs/admin@orcl file=G:\WORKED_PROJECTS\yunshishuju\ss\ss.dmp full=y ignore=y2.导出exp cd_zhzs/admin@orcl file=G:\WORKED_PROJECTS\yunshishuju\ss\s.dmp full=y3、ip导出方式:exp usernam原创 2017-02-19 21:46:17 · 710 阅读 · 0 评论 -
oracle中char与varchar2的区别
1. CHAR的长度是固定的,而VARCHAR2的长度是可以变化的, 比如,存储字符串“abc",对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),在数据库中它是以空格占位的,而同样的VARCHAR2 (20)则只占用3个字节的长度,20只是最大值,当你存储的字符小于20时,按实际长度存储。 2.CHAR的效率比VARCHAR2的效率稍高。看来cscm转载 2017-01-18 14:23:49 · 511 阅读 · 0 评论 -
oracle 修改字段类型的方法
今天公司因为业务需要,修要修改某个字段数据类型有number(5),变为number(5,2)型要是没有数据的话直接用以下语句即可alter table tb_test modify permile number(5,2);但是有数据的话 就不能用上面方法了,alter table tb_test add permile_temp number(5,2)转载 2017-01-03 14:15:10 · 209 阅读 · 0 评论 -
oracle删除重复数据,只留一条数据
--worked well。可以删除重复记录,对于多个字段也是一样的原理 delete from T_USER where id in (select id from T_USER group by id having count(id) > 1) and rowid not in (select min(rowid) from T_USER group by id having原创 2017-01-03 10:17:07 · 402 阅读 · 0 评论 -
oracle 批量插入时,如何去除重复数据
用储存过程批量抽取一个视图的数据,插入到一个新建的表,视图数据有2.4亿,昨天抽取到6千万就卡住了,不知道什么原因,想继续执行这个存储过程,想请问加什么条件来避免插入那些已经插入过的数据视图上有唯一性字段 XH储存过程如下create or replace procedure up_table astype a is table of new_table%rowt原创 2017-06-06 23:44:46 · 6380 阅读 · 0 评论 -
mybatis 批量插入数据
create sequence T_EQUIPMENT_sequenceincrement by 1start with 1nomaxvaluenocycle cache 10;INSERT INTO T_EQUIPMENT VALUES(T_EQUIPMENT_sequence .nextval, 'LEWIS', 'CLERK',7902, SYSDATE,转载 2017-06-11 16:29:25 · 2216 阅读 · 1 评论 -
mybatis 自增主键配置
mybatis进行插入操作时,如果表的主键是自增的,针对不同的数据库相应的操作也不同。基本上经常会遇到的就是 Oracle Sequece 和 MySQL 自增主键,至于其他的手动生成唯一主键的问题在这里就不讨论了,这里主要说明下在mybatis中对于自增主键的配置。不返回自增主键值如果考虑到插入数据的主键不作为其他表插入数据的外键使用,那么可以考虑使用这种方式。oracl转载 2017-06-13 22:04:23 · 8155 阅读 · 0 评论 -
oracle忘记sys密码
在开始菜单点击‘运行’,输入‘cmd’,打开命令提示窗口SQL> conn /as sysdba 已连接。 SQL> alter user system identified by passwordzwdfc; 用户已更改。 SQL> alter user sys identified by passwordzwdfc; 用户已更改。 SQL原创 2017-03-02 17:00:21 · 271 阅读 · 0 评论 -
oracle存储过程语法
oracle 存储过程的基本语法 及注意事项1.基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字( 参数1 IN NUMBER, 参数2 IN NUMBER) IS变量1 INTEGER :=0;变量2 DATE;BEGINEND 存储过程名字2.SELECT INTO STATE转载 2017-03-02 21:20:46 · 212 阅读 · 0 评论 -
Oracle 执行计划(Explain Plan) 说明
如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。 如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以断定是执行计划出了问题。 看懂执行计划也就成了SQL优化的先决条件。 这里的SQL优化指的是SQL性能问题的定位,定位后就可以解决问题。 一.转载 2017-05-15 20:56:35 · 1886 阅读 · 0 评论 -
Oracle执行计划 讲解(一)
看懂Oracle执行计划是优化的第一步,让我们从下面的例子开始吧。 下面为补充内容1、创建测试表[sql] view plain copySQL> create table t as select 1 id,object_name from dba_objects; Table created转载 2017-05-15 20:55:19 · 2255 阅读 · 0 评论 -
Oracle 执行计划(Explain Plan) 说明
如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。 如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以断定是执行计划出了问题。 看懂执行计划也就成了SQL优化的先决条件。 这里的SQL优化指的是SQL性能问题的定位,定位后就可以解决问题。 一.转载 2017-05-15 20:53:27 · 636 阅读 · 0 评论 -
看懂Oracle执行计划
最近一直在跟Oracle打交道,从最初的一脸懵逼到现在的略有所知,也来总结一下自己最近所学,不定时更新ing… 一:什么是Oracle执行计划?执行计划是一条查询语句在Oracle中的执行过程或访问路径的描述 二:怎样查看Oracle执行计划?因为我一直用的PLSQL远程连接的公司数据库,所以这里以PLSQL为例:①:配置执行计划需转载 2017-05-15 20:51:43 · 532 阅读 · 0 评论 -
Oracle执行计划详解
本文源自TTT BLOG,原文地址:http://blog.chinaunix.net/u3/107265/showart_2192657.html简介: 本文全面详细介绍oracle执行计划的相关的概念,访问数据的存取方法,表之间的连接等内容。 并有总结和概述,便于理解与记忆!+++目录--- 一.相关的概念 Rowid的概转载 2017-05-15 20:50:38 · 218 阅读 · 0 评论 -
Oracle索引(Index)创建使用
Oracle对象教程:索引(Index)创建使用,索引:对数据库表中的某些列进行排序,便于提高查询效率。当我们在某本书中查找特定的章节内容时,可以先从书的目录着手,找到该章节所在的页码,然后快速的定位到该页。这种做法的前提是页面编号是有序的。如果页码无序,就只能从第一页开始,一页页的查找了。数据库中索引(Index)的概念与目录的概念非常类似。如果某列出现在查询的条件中,而该列的数转载 2017-05-11 21:50:11 · 3227 阅读 · 0 评论 -
inner join和left join的区别
说起这两种联接方式,一定要把Right Join联系起来。一、释义。1、Left Join(左联接) 以左表为中心,返回左表中符合条件的所有记录以及右表中联结字段相等的记录——当右表中无相应联接记录时,返回空值。2、Right Join(右联接) 以右表为中心,返回右表中符合条件的所有记录以及左表中联结字段相等的记录——当左表中无相应联接记录时,转载 2017-05-04 16:02:32 · 10578 阅读 · 0 评论 -
oracle 除数为 0
decode(除数,0,显示0%,不为零的正常表达式)代替原来那个有可能出0除报错的表达式select t.ynzzs,t.yinzzs,t.ynzzs-t.yinzzs cye,decode(t.ynzzs,0,0,to_char(nvl(nvl(t.ynzzs, 0) - nvl(t.yinzzs, 0), 0) /nvl(t.ynzzs,0),'9999990.000')) z原创 2017-04-15 09:50:22 · 3216 阅读 · 0 评论 -
SET DEFINE OFF prompt
在SQL*Plus中默认的"&"表示替代变量,也就是说,只要在命令中出现该符号,SQL*Plus就会要你输入替代值。这就意味着你无法将一个含有该符号的字符串输入数据库或赋给变量,如字符串“SQL&Plus”系统会理解为以“SQL”打头的字符串,它会提示你输入替代变量 Plus的值,如果你输入ABC,则最终字符串转化为“SQLABC”。 set define off 则关闭该功能,“&”将作为普原创 2017-04-07 19:57:55 · 450 阅读 · 0 评论 -
oracle截取字符串(截取某个字符前面的字符串)
要求:A.数据库表中的一个字符串 可能含有"+" 例:ORC+001 也可能不含“+” B.要求如果该字符串含有“+”,则取“+”之前的字符 例:ORC+001 取ORC C.如果该字符串不含"+",则直接取该字符串。 解答:利用ORACLE中 INSTR,SUBSTR以及CASE WHEN语法即可实现。 Oracle中函数 INSTR:转载 2017-03-29 13:37:31 · 24867 阅读 · 0 评论 -
oracle substr instruction trunc
substr(字符串,-10)Oracle 字符串函数 substr(字符串,截取开始位置,截取长度) 1. 如果最后一个截取长度参数为空,则表示从截取开始位置起截到最末 2. 如果截取开始位置 为大于0的数字,则表示从字符串左数几位开始 3. 如果截取开始位置 为小于0的数字,则表示从字符串右数几位开始--1.去掉;@update GGZYJYZX_ZFCGXX t set t.zbr原创 2017-03-28 21:10:50 · 551 阅读 · 0 评论 -
oracle截取指定字符串
摘要:在开发项目的过程中遇到了这样的一个问题,就是从远程服务器取到的数据中是由一段规则的字符串组成的,但是你想要的还不是这段字符串,是其中的一段字符串,那就的使用Oracle强大的函数了,我的问题是这样的,我要把如下所示红框内的那段字符串截取出来,就是说截取第一个"-"和第二个“-”之间的字符串出来:一:如图所示:二:新建数据表:转载 2017-03-28 17:45:00 · 1184 阅读 · 0 评论 -
oracle清空某列数据
1,update dxxx d set d.tydm=null2,update dxxx d set d.tydm=replace(tydm,'?','') 3,update dxxx d set d.tydm=replace(tydm,'?',null)原创 2017-03-08 10:28:19 · 13890 阅读 · 0 评论 -
oracle复制表 备份表
1.复制表create table dxxx as select * from zhzs_ahqscjdj_dxxx或create table dxxx1 as select * from zhzs_ahqscjdj_dxxx where 1=12.复制表结构create table dxxx2 as select * from zhzs_ahqscjdj_dxxx wh原创 2017-03-08 10:06:56 · 1261 阅读 · 0 评论 -
oracle导出function,procedure
Oracle如何导出存储过程 昨天使用exp可以导出oracle数据库表,今天说下怎么导出存储过程。 首先看下使用pl/sql怎么导出存储过程。 导出步骤: tools-->Export User Objects...-->选择存储过程(Procedure,Function,Trigger,Type,Type Body,Pack转载 2017-03-07 15:16:34 · 5089 阅读 · 0 评论 -
oracle批量为表增删字段
create or replace procedure add_column as--declare在oracle中指代的是“块”,用于处理一段业务逻辑的--declare --动态表表名前缀 tbl_name_prefix nvarchar2(255); --表名 tbl_name nvarchar2(255); --字段 add原创 2017-03-02 21:33:31 · 371 阅读 · 0 评论 -
Mybatis 操作数据库的主键自增长
本篇文章将研究mybatis 实现oracle主键自增的机制 首先我们看对于同一张student表,对于mysql,sql server,oracle中它们都是怎样创建主键的在mysql中1234567create table Student( Student_I转载 2017-06-14 09:06:11 · 905 阅读 · 0 评论