随笔分类 - Oracle
摘要:/*****创建用户并指定操作哪张表开始******/--1.创建用户并设置默认表空间CREATE USER CHENGDWY IDENTIFIED BY CHENGDWY DEFAULT TABLESPACE CFWL QUOTA UNLIMITED ON CFWL;--DROP USER CHE...
阅读全文
摘要:在删除数据表的时候往往遇到外键约束无法删除的情况,我们可以通过以下几步将数据库表删除,建议在删除库之前先对数据库进行备份,养成良好习惯。1.删除外键--查询用户所有表的外键,owner条件为userselect * from user_constraints c where c.constraint...
阅读全文
摘要:问题描述:Oracle通过主键id删除2000条记录很慢,需要花费十二分钟。解决过程:1.首先查看SQL的执行计划,执行计划正常,cost只有4,用到了主键索引。2.查看等待事件,select * from v$session_wait where sid = 507显示的event是db file...
阅读全文
摘要:权限: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> conn / as sysdba; SQL>create user username...
阅读全文
摘要:用DNINMSV31账户登录数据库进行如下操作:1)创建用户:CREATE USER NORTHBOUND IDENTIFIED BY NORTHBOUNDDEFAULT TABLESPACE "TBS_DNINMSV31" TEMPORARY TABLESPACE "TEMP2" QUOTA UN...
阅读全文
摘要:原文:http://blog.csdn.net/lwei_998/article/details/6093807The UNION operator returns only distinct rows that appear in either result,while the UNION ALL...
阅读全文
摘要:实现效果:例如下面的数据[php] groupid personid name 1 a 超级管理员2 b 管理员2 c 测试员3 a 超级管理员4 b 管理员5 b 管理员5 ...
阅读全文
摘要:通过下面的方式oracle可以导出指定了条件的数据:exp mixcoaldb/mixcoaldb@server tables=(shengcssjk) query=\"where to_char(jiankdate, 'yyyy-mm') = '2014-05'\" file=( E:\...
阅读全文
摘要:Oracle中将查询出的多条记录的某个字段拼接成一个字符串的方法11g里面用listagg:select listagg(name,',') within (order by id) from table10g里面用wm_concat:select wm_concat(name) from tabl...
阅读全文
摘要:ORACLE锁机制主要是为了对并发操作进行控制,来保证数据的一致性和准确性。下面我们就来学习ORACLE锁机制。Oracle RDBMS的封锁类型可分为如下三类:1、内部级封锁内部级封锁是用于保护ORACLE内部结构,由系统内部实现,用户不能访问,因此我们不必对此做过多的了解。2、DDL级封锁(字典/语法分析封锁)DDL级封锁也是由ORACLE RDBMS来控制,它用于保护数据字典和数据定义改变时的一致性和完整性。它是系统在对SQL定义语句作语法分析时自动地加锁,无需用户干予。字典/语法分析封锁共分三类:(1)、字典操作锁:用于对字典操作时,锁住数据字典,此封锁是独占的,从而保护任何一个时刻仅
阅读全文
摘要:首先给大家推荐两篇我看后的博文,我已经内容转载过来:1.对触发器的讲解本篇主要内容如下:8.1 触发器类型8.1.1 DML触发器8.1.2 替代触发器8.1.3 系统触发器8.2 创建触发器8.2.1 触发器触发次序8.2.2 创建DML触发器8.2.3 创建替代(INSTEAD OF)触发器8.2.3 创建系统事件触发器8.2.4 系统触发器事件属性8.2.5 使用触发器谓词8.2.6 重新编译触发器8.3 删除和使能触发器8.4 触发器和数据字典8.5 数据库触发器的应用举例触发器是许多关系数据库系统都提供的一项技术。在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处理过
阅读全文
摘要:今天遇到一个问题,在数据库中删除一条记录,但是在删除的时候报错了,报出该记录已经被其他子记录引用,想了好久不知道怎么做,后来发现报错提示信息中会提示删除该记录时影响了那个约束条件,于是思路出来了:1、知道了约束名称,怎么知道这个约束是作用于哪张表、那个字段上的啊2、找到了这张表,看看那个字段的约束用到了这个约束名3、如果这条记录时无用的,那么引用这条记录的其他自己录也应该没用了于是查找怎么根据约束名称找到相应的表、字段,那么下面这句SQL就能根据约束名找到相应的表:1 SELECT * FROM USER_CONSTRAINTS WHERE CONSTRAINT_NAME = 'PK_
阅读全文
摘要:这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询。这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧! 日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天。你可以用任何的日期值替换 “SYSDATE”来指定查询的日期。1 SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month" 2 FROM DUAL;获取当前月份的最后一天这个查询语句类似于上面那个语句,而且充
阅读全文
摘要:1. 备份:PS:2014-1-15如果导出的dmp数据文件不大的话,就直接每天导出好了,不要只保存七天的数据。然后顶起通过winrar对文件进行打包,我发现dmp文件的压缩包还是很高的。那么就需要考虑在导出的dmp文件末尾加上日期了。bat脚本里面有date和time的函数,通过以下函数我们就可以得到想要的日期了。如果要求日期是以"-"结束,需要设定日期的格式为YYYY-M-D,而不是YYYY/M/D才可以。C:\Users\User>echo %date:~0,10%-%time:~0,2%-%time:~3,2%-%time:~6,2%2014-01-15-15
阅读全文
摘要:删除用户所有的表,带有级联关系: 1 --创建存储过程 2 CREATE OR REPLACE 3 PROCEDURE DROPTABLES IS 4 V_SQL VARCHAR2(2000); 5 CURSOR CUR IS SELECT TABLE_NAME FROM USER_TABLES ORDER BY TABLE_NAME; 6 BEGIN 7 FOR ROWS IN CUR LOOP V_SQL := 'drop TABLE ' || ROWS.TABLE_NAME || ' cascade constraints'; 8 DBMS_OUTPUT.
阅读全文
摘要:1 --创建临时表空间 2 create temporary tablespace test_temp --test_temp表空间名称 3 tempfile 'E:\oracle\product\10.2.0\oradata\testserver\test_temp01.dbf'--oracle文件路径 4 size 32m 5 autoextend on 6 next 32m maxsize 2048m 7 extent management local; 8 9 --创建数据表空间 10 create tablespace test_data --test_data临时表
阅读全文
摘要:目录[-]一、行转列1.1、初始测试数据1.2、 如果需要实现如下的查询效果图:1.3、延伸二、列转行1.1、初始测试数据1.2、 如果需要实现如下的查询效果图:一、行转列1.1、初始测试数据表结构:TEST_TB_GRADESql代码:1 create table TEST_TB_GRADE 2 ( 3 ID NUMBER(10) not null, 4 USER_NAME VARCHAR2(20 CHAR), 5 COURSE VARCHAR2(20 CHAR), 6 SCORE FLOAT 7 )初始数据如下图:1.2、 如果需要实现如下的查询...
阅读全文
摘要:1、拼接字符串1)可以使用“||”来拼接字符串1 select '拼接'||'字符串' as str from dual 2)通过concat()函数实现1 select concat('拼接', '字符串') as str from dual 注:oracle的concat函数只支持两个参数的方法,即只能拼接两个参数,如要拼接多个参数则嵌套使用concat可实现,如:1 select concat(concat('拼接', '多个'), '字符串') from dual 2、截取字
阅读全文

浙公网安备 33010602011771号