oracle
millerrch
这个作者很懒,什么都没留下…
展开
-
oracle忘记sys/system/scott用户的密码怎么办
一、忘记除SYS、SYSTEM用户之外的用户的登录密码。 用SYS (或SYSTEM)用户登录: CONN SYS/PASS_WORD AS SYSDBA; 使用如下语句修改用户的密码: ALTER USER user_name IDENTIFIED BY newpass; 注意:密码不能全是数字。并且不能是数字开头。否则会出现:ORA-00988: 口令缺失或无效二、忘记...原创 2011-12-17 15:12:45 · 79 阅读 · 0 评论 -
Oracle_AWR_报告分析实例讲解
WORKLOAD REPOSITORY report forDB NameDB IdInstanceInst numReleaseRACHostICCI1314098396ICCI1110.2.0.3.0YESHPGI...原创 2013-03-27 10:57:12 · 170 阅读 · 0 评论 -
用于理解join的例子
--第1组-- 这个相当于全关联,只显示两个都存在的SELECT * FROM a,b WHERE a.ID=b.ID; SELECT * FROM a JOIN b ON a.ID=b.ID; --第2组--SELECT * FROM a LEFT JOIN b ON a.ID=b.ID AND a.NAME='a'; SELECT * FRO...原创 2013-05-17 13:48:36 · 67 阅读 · 0 评论 -
分区表数据部分清空
alter table masadw.tb_dw_gc_group_base_d truncate partition group_base_d_20130304 根据PARTITION GROUP_BASE_D_20110930 VALUES (20110930)中partition中的分区来进行分段清空原创 2013-05-20 16:55:01 · 459 阅读 · 0 评论 -
PL/SQL 快捷键设置
se = selectsf = select * fromscf = select count(*) fromgb = group byob = order bytt = truncate tableii = insert intoct = create tablealt = alter tablesc = select count(*) fromco =...原创 2013-05-23 09:28:46 · 93 阅读 · 0 评论 -
存储过程中创建表时 ORA-01031: insufficient privileges的解决方法
执行某个存储过程时报错:ORA-01031: insufficient privileges。 调试存储过程,发现在存储过程运行到创建表的这一步时出错,意即没有权限创建表,但实际上执行这个存储过程的用户是有创建表的权限的,在网上得到解决方法,在存储过程中添加如下内容即可:Authid Current_User,修改后的存储过程结构如下:CREATE OR REPLACE PROCED...原创 2012-08-31 09:04:02 · 648 阅读 · 0 评论 -
(转)oracle中LAG()和LEAD()等分析统计函数的用法(统计月增长率)
LAG()和LEAD()统计函数可以在一次查询中取出同一字段的前N行的数据和后N行的值。这种操作可以使用对相同表的表连接来实现,不过使用LAG和 LEAD有更高的效率。以下整理的LAG()和LEAD()例子:LAG(EXPRESSION,<OFFSET>,<DEFAULT>)SQL> select year,region,profit ,lag (profit,...原创 2013-05-25 18:10:17 · 119 阅读 · 0 评论 -
(ZZ)Oracle Union/Union all 的排序问题
Oracle 通过在索引列上使用UNION/UNION ALL来提高合并查询的效率(相对于OR,不在此具体阐述),UNION/UNION ALL排序时,无论有多少个被union的部分,都只有最后一行一个order by子句,且UNION/UNION ALL的order by子句只能通过列号来标示你要排序的字段,例如:SELECT a.recID, a.eventLevel, a.srcIP...原创 2012-09-03 14:14:32 · 197 阅读 · 0 评论 -
(转) ORACLE GROUPING函数的使用
GROUPING函数可以接受一列,返回0或者1。如果列值为空,那么GROUPING()返回1;如果列值非空,那么返回0。GROUPING只能在使用ROLLUP或CUBE的查询中使用。当需要在返回空值的地方显示某个值时,GROUPING()就非常有用。 关于ROLLUP和CUBE函数的使用,请参见我的另一篇文章。http://blog.csdn.net/wh62592855/archi...原创 2013-06-05 09:05:58 · 216 阅读 · 0 评论 -
(ZT)ROW_NUMBER() OVER函数的基本用法用法
转载 http://www.cnblogs.com/icebutterfly/archive/2009/08/05/1539657.html 语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW_NUMBER() OVER (ORDER ...原创 2013-06-19 11:14:02 · 81 阅读 · 0 评论 -
(ZZ)oracle与mysql的批量插入
oracle与mysql的批量插入 oracle 批量插入: insert into tableName(col1, col2, col3) select '第一行第一列值', '第二列值', '第三列值' from dual union select ' 第二行第一列值 ', '第二列值', '第三列值' from dual union select ' ...原创 2013-01-29 16:34:08 · 105 阅读 · 0 评论 -
Oracle 游标使用全解
-- 声明游标;CURSOR cursor_name IS select_statement--For 循环游标--(1)定义游标--(2)定义游标变量--(3)使用for循环来使用这个游标declare --类型定义 cursor c_job is select empno,ename,job,sal ...原创 2013-07-16 14:43:56 · 49 阅读 · 0 评论 -
快速创建分区表
create table test_partition partition by list(statis_month) (partition p201306 values(201306)) as select 201306 statis_month, 1234 test_content from dual原创 2013-08-16 16:03:49 · 123 阅读 · 0 评论 -
SYS用户登录的方法
情况一:使用sqlplus登录正常输入用户名的口令,就会报错,因为SYS是在数据库之外的超级管理员,所以我们在登录的时候要在输入口令:口令+as sysdba(比如:123456 as sysdba)情况二:使用PL/SQL登录这是我们平时的登录数据库很常规的操作,但是用SYS作为用户名登录的时候就会报ORA-28009:connection as SYS should be as SYSDBA ...原创 2013-03-26 16:54:38 · 1531 阅读 · 0 评论 -
Oracle更改默认端口
启动监听器[oracle@localhost ~]$ lsnrctl start停止监听器[oracle@localhost ~]$ lsnrctl stop 修改Oracle端口第一步,停止监听服务第二步,修改 listener.ora 和 tnsnames.ora 两个文件,把其中的Port改为自己需要的,另外listener.ora需要修改为如下格式SID_LIST_L...原创 2013-03-25 15:24:45 · 183 阅读 · 0 评论 -
利用oradata进行数据恢复
之前因为现场对方工程师的原因,把oracle其他文件夹都给格了,只剩下oradata文件夹拷贝出来了,基于ORACLE9i版本第一步:搭建一个和之前一模一样的数据库系统环境第二步:在“我的电脑”的“管理”的服务选项中关闭所有Oracle相关服务第三步:将oradata文件夹覆盖过去第四步:启动服务,登录之后应该会发现普通用户无法登录,会报错ora-01033 ORACLE ini...原创 2013-03-20 18:07:11 · 864 阅读 · 0 评论 -
全文索引
http://yangtingkun.itpub.net/post/468/246823原创 2012-05-04 15:10:29 · 60 阅读 · 0 评论 -
Oracle 从某张表中随机取出记录
SELECT * FROM (SELECT its_coderoad.*, DBMS_RANDOM.random num FROM its_coderoad ORDER BY num) WHERE ROWNUM < 2 用DBMS_RANDOM.random来形成随机数然后排序,因为排序数是随机生成的,所以每次排序结果都可能不...原创 2012-05-09 10:47:50 · 184 阅读 · 0 评论 -
通过Toad分析Oracle的查询语句
在Toad的Editor下,将查询语句粘贴到上面,然后快捷键CTRL+E,或者选择菜单中的Editor中的Explain Plan Current SQL,可以看到该查询语句的分析情况,来判断是哪个模块哪个步骤消耗的时间较多,从而决定从哪开始优化...原创 2012-05-15 15:44:26 · 667 阅读 · 0 评论 -
Oracle中表建立联合索引后,其中的一个字段是否可以用来进行索引
1、表的主键、外键必须有索引;2、数据量超过300的表应该有索引;3、经常与其他表进行连接的表,在连接字段上应该建立索引;4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;5、索引应该建在选择性高的字段上;6、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;7、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:A、正确选择复合索引中的主列字段,一般是选择...原创 2012-05-25 11:07:24 · 924 阅读 · 0 评论 -
oracle一次插入多条数据
insert into 表名(字段1,字段2) select '一','二' from dual union all select '三','四' from dual union all select '五','六' ...原创 2012-05-25 14:47:54 · 91 阅读 · 0 评论 -
ORA-12545:因目标主机或对象不存在,连接失败 的解决方法
造成这个原因一般是因为更改过主机名称 解决方法:1.搜索oracle安装目录,找到这俩个文件 tnsnames.ora 和 listener.ora ,还有一个大写的TNSNAMES.ORA不用管它。他们的路径如下:如 盘符:\oracle\ora92\network\admin 他们在同一个目录里,编辑这俩个文件,把里面的Host= 的地方改为你的计算机名就行了。(注意有多个,看仔...原创 2012-02-09 10:01:26 · 258 阅读 · 0 评论 -
Oracle自增的实现
1、Create Sequence 你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限, CREATE SEQUENCE emp_sequence INCREMENT BY 1 -- 每次加几个 START WITH 1 -- 从1开始计数 NOMAXVALUE -- 不设置最大值 ...原创 2011-12-06 18:42:54 · 81 阅读 · 0 评论 -
oracle中Where子句的条件顺序对性能的影响
Oracle条件语句where中是从右到左执行的,不过对性能基本没有影响,都需要全表扫描,都要依次访问该表的所有数据块,对一个数据块中的行,逐一检查是否同时符合两个条件,所有就不存在先过滤出多少条数据的问题 所以where子句中条件的顺序对性能没有影响,但RBO优化器模式下,表应该按结果记录数从大到小的顺序从左到右来排列,因为表间连接时,最右边的表会放到嵌套循环的最外层。最外层的循环次数越...原创 2012-02-22 16:29:30 · 318 阅读 · 0 评论 -
Oracle中如何执行带返回参数的存储过程
declare v_return_value number; ##声明一个参数接返回值begin ITS_SYS_PKG.saveITS_REGION('100009','测试区域','bz',v_return_value); dbms_output.put_line(v_return_value); (老版本为dbms_output.put_line)end;...原创 2013-03-06 18:54:28 · 2230 阅读 · 0 评论 -
如何让触发器失效和重新起效
ALTER TABLE [schema.]table_name{ENABLE|DISABLE} ALL TRIGGERS; 可以使和table_name表 相关的触发器都失效原创 2012-07-20 14:53:21 · 1541 阅读 · 0 评论 -
Oracle硬拷贝数据迁移
Windows2003之前崩溃了,之后想恢复数据,将oracle文件夹从电脑中整体拷贝出来,然后在一台新机子上安装oracle(需与之前的数据库版本和服务名均一致),之后,将所有Oracle有关服务停掉,将新电脑中oracle文件夹改名,把原电脑中拷贝出来的文件夹整体覆盖过来。可以将新电脑的IP和主机名变更为原电脑的。这样直接重启之前关闭的服务即可,如果需要变化主机名和IP。9I环境下oracle...原创 2013-03-13 15:54:19 · 224 阅读 · 0 评论 -
Windows版Oracle完全卸载
1、停止服务 打开“服务”,然后停止所有Oracle服务 2、删除程序3、删除注册表中的所有关于Oracle项(1)在HKEY_LOCAL_MACHINE/SOFTWARE下,删除Oracle目录(2)在HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services下,删除所有Oracle项(3)在HKEY_L...原创 2013-03-20 18:01:03 · 70 阅读 · 0 评论 -
(ZZ)Oracle约束的关键字Enable/Disable/Validate/Novalidate
1 组合特性说明 ValidateNovalidate已有记录新增/删除记录已有记录新增/删除记录EnableYesYesNoYesDisableYesNoNoNoVal...原创 2015-09-16 11:34:05 · 104 阅读 · 0 评论