学习笔记
文章平均质量分 53
办公室里穿拖鞋
资深互联网业务安全从业者
展开
-
Oracle 11g 启动和关闭服务
自己写两个批处理文件来手动启动和停止Oracle服务(一直开着服务会比较耗损系统资源,影响系统运行速度)启动和关闭数据库所使用的服务器名称和说明:服务名称 说明OracleOracle_homeTNSListener 对应于数据库的监听程序OracleServiceSID 对应于数据库的例程OracleDBConsoleSID 对应于Oracle Enter转载 2013-07-16 09:40:21 · 1274 阅读 · 0 评论 -
ORACLE 多表关联 UPDATE 语句
为了方便起见,建立了以下简单模型,和构造了部分测试数据:在某个业务受理子系统BSS中,SQL 代码--客户资料表create table customers ( customer_id number(8) not null, -- 客户标示city_name varchar2(10) notnull, -- 所在城市customer_type char(转载 2013-07-28 20:31:34 · 721 阅读 · 0 评论 -
Oracle 并行处理
Oracle 表连接Oracle 锁与锁争用(一)Oracle 并行处理 2013-03-30 12:25:25| 分类:Oracle | 标签:并行 |字号大中小订阅 在一个串行的执行环境中,由单个进行程或线程负责处理SQL的操作,而且每个动作必须在随后的动作开始前完成。在任意给定的时刻,单个Oracle进程转载 2013-08-03 17:48:56 · 1815 阅读 · 0 评论 -
数据库中分组第N条记录获取方式
第一条记录Oracle:select * from(select row_number() over(partition by num order by num) gid,* from tb) tmp where gid=1; ROW_NUMBER()用法(转) ROW_NUMBER()说明:返回结果集分区内行的序列号,每个分区的第一行从 1 开始。语法:ROW_NUM原创 2013-07-30 10:20:16 · 922 阅读 · 0 评论 -
Oracle alter session命令
该命令用还修改会话级的状态和设置,这些改变后立即生效。会话结束后即失效。这与alter system 修改的是数据库系统的配置,是全局的 不同,请注意。alter session是在会话级别对某些参数进行更改,在v$parameter视图中的ISSES_MODIFIABLE字段为true的表示这个参数可以使用alter session修改;alter system是在系统级别对某些参数转载 2013-08-05 17:06:13 · 16006 阅读 · 0 评论 -
oracle 肢解数据
有这个表A学号 姓名 科目 成绩1001 小小 语文 661001 小小 数学 701002 毛毛 语文 801002 毛毛 数学 56怎么把他合并成下面这个表学号 姓名 语文 数学 总分1001 小小 66 70 1361002 毛毛 80 56 136 SELECT 学号,姓名,max(decode(科目,原创 2013-08-08 10:45:19 · 712 阅读 · 0 评论 -
Oracle 多列合并为一列,字符串连接
select concat('man','jia','hua') from dual; 这句话有问题。 select concat('man','jia') from dual;这句话就没问题。 concat 函数只能连接2个字符串么?那想要连接3个怎么办? 可以这样处理: SELECT 'man' || 'jia' || 'hua' FROM DUAL; 或者多写几个 c转载 2013-08-08 10:53:53 · 6745 阅读 · 0 评论 -
同时可进行插入和更新操作,oracle merge语句
http://blog.csdn.net/yuzhic/article/details/1896878http://blog.csdn.net/macle2010/article/details/5980965该命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据. ORACLE 9i 中,使用此命令必须同时指定UPDATE 和INSERT 关键词,ORACLE 10g 做了转载 2013-08-08 10:18:03 · 1987 阅读 · 0 评论 -
ORA-02429: 无法删除用于强制唯一/主键的索引
ORA-02429: 无法删除用于强制唯一/主键的索引 (2008-06-18 15:52:49) 标签:it 分类:ora错误分析 操作:因为drop 掉了一个2千万记录的大表,现在想收缩其原来所在的表空间的数据文件,但是由于有些小记录的表是create在大表之后的,所以需要移动这些小表,通过dba_extents查到这些在高水位空间上的表SQL> select segm转载 2013-08-09 10:32:05 · 1449 阅读 · 0 评论 -
oracle死进程查找与删除方法
到了下午,一编译我的oracle包就出现卡死状态,过了好久终于在弹出一个错误“ora-04021”错误,经过查找原来是我的job在执行(job执行的包正式我编译的包怪不得编译不了)。因此查找原因时可以通过以下几个表来查看具体的进程死锁: v$lock;--查看锁的状态 v$session;--查看进程因此我就将此job停止,但是停止后查看select * from dba_job转载 2013-08-03 15:17:32 · 1381 阅读 · 0 评论 -
PLSQL开发笔记和小结
转载地址,觉得很帮,很适合快餐学习:http://www.blogjava.net/cheneyfree/archive/2008/07/19/216090.html PLSQL开发笔记和小结***************************************** PLSQL基本结构****************************************转载 2013-07-25 19:21:49 · 722 阅读 · 0 评论 -
如何在SAS中直接使用Oracle特有函数--sas Pass-Through Facility
声明:参考了百度文库中的文档,向有关作者表示感谢! 在使用sas进行行转列的字符串合并时,发现sas中并没有合适的方法,而oracle在10g之后包含了WMSYS.WM_CONCAT函数,可以轻松的解决这类问题: select t.rank, t.Name from t_menu_item t;10 CLARK10 KING10 MILLER20原创 2013-07-25 10:25:57 · 4646 阅读 · 1 评论 -
完全卸载oracle11g步骤
完全卸载oracle11g步骤:1、 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。2、 开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer,单击“卸载产品”-“全部展开”,选中除“OraDb11g_home1”外的全部目录,删除。5、 运行regedit转载 2013-07-17 19:16:42 · 711 阅读 · 0 评论 -
Oracle数据类型
数据类型(datatype)是列(column)或存储过程中的一个属性。 Oracle支持的数据类型可以分为三个基本种类:字符数据类型、数字数据类型以及表示其它数据的数据类型。 字符数据类型 CHAR CHAR数据类型存储固定长度的子符值。一个CHAR数据类型可以包括1到2000个字符。如果对CHAR没有明确地说明长度,它的默认长度则设置为1.如果对某个CHAR类型变转载 2013-07-19 19:31:23 · 1173 阅读 · 0 评论 -
索引以及Truncate表
数据库索引好比是一本书前面的目录,能加快数据库的查询速度。索引的优缺点概述 建立索引的目的是加快对表中记录的查找或排序。 为表设置索引要付出代价的:一是增加了数据库的存储空间,二是在插入和修改数据时要花费较多的时间(因为索引也要随之变动)。详述 创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二,可以大大加快数转载 2013-07-22 17:54:52 · 1210 阅读 · 0 评论 -
SAS宏技术中,%let和call symput有什么区别?
平时经常使用的宏变量定义方法有三种:1. %let xxx=yyy; 2. Call Symput('xxx','yyy');3. select xxx into: yyy.三种定义方式最大的区别是在MACRO函数内定义所生成的宏变量的类型不同:Call Symput在宏函数中定义的宏变量可以在函数外调用;而%let和 Select into则不能,因为这2种方法在MACRO函转载 2013-07-30 18:30:03 · 6344 阅读 · 0 评论 -
Oracle 字符串聚合函数
select t.rank, t.Name from t_menu_item t;10 CLARK10 KING10 MILLER20 ADAMS20 FORD20 JONES20 SCOTT20 SMITH30 ALLEN30 BLAKE30 JAMES30 MARTIN30 TURNER30 WARD-------------转载 2013-07-24 17:37:48 · 1954 阅读 · 0 评论 -
“同名Cookie”的分析
了解Cookie的同学应该知道,浏览器客户端是以domain,path,name作为Cookie的唯一标识的,只要Name、Domain、Path中的任何一项不同,Cookie就是不能同的。由此便产生了同名Cookie。例如有四个cookie如下:d=1; expires=Sat, 23 May 2009 03:48:22 GMT; path=/; domain=.dny.comd转载 2013-07-24 10:52:06 · 1114 阅读 · 0 评论 -
SAS数据集取前N条记录
SAS数据集取前N条记录 方法一:data temp1;set sashelp.air(firstobs=n obs=n/obs=n);run;/*firstobs.n 方法二:proc sql;create table temp2 as select * from sashelp.air(firstobs=n obs=n/obs=n);quit;/转载 2013-07-31 09:47:35 · 11859 阅读 · 0 评论 -
%TYPE 和 %ROWTYPE
1. 使用%TYPE在许多情况下,PL/SQL变量可以用来存储在数据库表中的数据。在这种情况下,变量应该拥有与表列相同的类型。例如,students表的first_name列的类型为VARCHAR2(20),我们可以按照下述方式声明一个变量:DECLARE v_FirstName VARCHAR2(20);但是如果first_name列的定义改变了会发生什转载 2013-07-31 11:53:07 · 803 阅读 · 0 评论 -
Oracle SQL性能优化
Oracle SQL性能优化(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersectio转载 2013-07-31 16:53:35 · 610 阅读 · 0 评论 -
收集oracle统计信息
优化器统计范围:表统计; --行数,块数,行平均长度;all_tables:NUM_ROWS,BLOCKS,AVG_ROW_LEN;列统计; --列中唯一值的数量(NDV),NULL值的数量,数据分布; --DBA_TAB_COLUMNS:NUM_DISTINCT,NUM_NULLS,HISTOGRAM;索引统计;--叶块数量,等级,聚簇因子;转载 2013-08-09 14:02:53 · 921 阅读 · 0 评论 -
于oracle的NOLOGGING
可以采用NOLOGGING模式执行以下操作:1 索引的创建和ALTER(重建)。2 表的批量INSERT(通过/*+APPEND */提示使用“直接路径插入“。或采用SQL*Loader直接路径加载)。表数据不生成redo,但是所有索引修改会生成redo,但是所有索引修改会生成redo(尽管表不生成日志,但这个表上的索引却会生成redo!)。3 LOB操作(对大对象的更新不必生成日转载 2013-08-22 16:46:20 · 864 阅读 · 0 评论 -
oracle 快速删除大批量数据方法(全部删除,条件删除,删除大量重复记录)
全部删除如果是删除某个表的所有数据,并且不需要回滚,使用 TRUNCATE 就ok了。关于Trancate 参见这里http://blog.csdn.net/gnolhh168/archive/2011/05/24/6442561.aspxSQL> truncate table table_name;条件删除如果删除数据有条件,如 delete from tablena转载 2013-08-22 16:35:58 · 2723 阅读 · 0 评论 -
DBLINK详解
--创建 CREATE public database link test_link CONNECT TO scott IDENTIFIED BY tiger using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) ) (CONNECT_DATA = (S转载 2013-08-15 16:41:08 · 1255 阅读 · 0 评论 -
oracle 10g 快照操作方法
一不小心听说了oracle 数据库快照,这个词我当初一听就楞了,不知道这个是什么玩意,然后花了点时间研究了下,以下是我通过网络学习总结的快照主要是用于分布式数据库,我们有数据库A,A中有个表a,我们在数据库B中要使用数据库A中a表的数据,这时候我们就可以在数据库B中创建数据库A的快照,这样可以提高我们的效率。我理解快照就是对表的复制,定时的将a表复制到b表(包括数据)注意:用快照创建的转载 2013-09-06 14:31:53 · 958 阅读 · 0 评论 -
字符串连接超长的解决wmsys.wm_concat()
在我的BLOG中第一篇文章写的就是字符串聚合连接的例子:http://yangtingkun.itpub.net/post/468/3380。后来还写过一篇用SQL实现相同功能的文章:http://yangtingkun.itpub.net/post/468/388003。不过上面两种方法都会面临一个问题,就是如果聚集连接的字符串长度如果超过了VARCHAR2类型所允许的最大长度,就会导致转载 2013-09-06 17:08:30 · 7217 阅读 · 0 评论 -
11g的interval partition 如何按天分区
按月分区:CREATE TABLE SALES_PART(TIME_ID NUMBER,REGION_ID NUMBER,ORDER_ID NUMBER,ORDER_DATE DATE)PARTITION BY RANGE (ORDER_DATE)INTERVAL (NUMTOYMINTERVAL(1,’month’)(PARTITION p_first VALUE转载 2013-09-02 18:08:45 · 1760 阅读 · 0 评论 -
文本编辑器中利用正则来提高查找和替换效率
今天在editplus中打开了一段代码查看, 由于代码每行都带有了行号, 我就想用查找和替换功能+正则表达式来去掉这些行号。一试果然很爽, 本来很繁琐的工作一会就做好了。那么常用的文本编辑器都支持哪些正则查找替换功能呢?我立刻想到了ultraedit, 这个古老又流行的编辑器,于是找了下介绍它利用正则来查找和替换的资料。摘抄了一篇感觉比较好的, 因为它把ultraedit支持的常用的两种正则都转载 2013-11-28 15:37:43 · 3875 阅读 · 0 评论 -
Oracle delete之后高水位线的问题解决
最近学习了一阵子Oracle, 感觉Oracle真的是博大精深, 包括Oralce内存结构,性能调整,数据备份等都不简单, 这些对开发也很重要, 下面把做的Oracle高水位线的一些实验贴出来, 方便以后Review:高水位线实验: -- 创建test3表 SQL> create table test3 as 2 select * from dba_objects whe转载 2013-08-07 15:25:33 · 2774 阅读 · 0 评论 -
SAS学习笔记
实习期间学习的简单笔记,与大家分享下! 分号结尾,不区分大小写,由数据步和过程步组成1,sas的数据数据集,类似于数据库中的表(table);SAS数据库(library),类似于数据库中数据库与表的关系,Libname samp 'E:\workspace\sas\samp';新建数据库Libname samop;撤销数据库2,sas语言构成Sas常量主要有原创 2014-01-10 11:39:06 · 5607 阅读 · 0 评论 -
Python raw_input和input总结 在版本2和版本3中的区别
[html] view plaincopyPython 2.3.4 (#1, Feb 2 2005, 11:44:13) [GCC 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)] on linux2 Type "help", "copyright", "credits" or "license" for more info转载 2013-10-08 10:42:54 · 1405 阅读 · 0 评论 -
Guided Image Filtering
1,定义引导滤波:即需要引导图的滤波器,引导图可以是单独的图像或者是输入图像,当引导图为输入图像时,引导滤波就成为一个保持边缘的滤波操作,可以用于图像重建的滤波。引导滤波的流程见下图:假设输入图像为p,输出图像为q,引导图为I,q与I在以像素k为中心的窗口中存在局部线性关系:窗口半径为r,a,b为线性系数,且在局部窗口k中为常数。这个模型保证了只有在I存在边缘的情况下,q才原创 2014-01-13 16:52:31 · 19624 阅读 · 6 评论 -
ORDERED 和 USE_NL() hint (zt)的用法
前两天,在给一只report写一个Validation Set.发现把这三个table PO_AGENTS PA, PER_PEOPLE_F PAPF,HR_LOCATIONS_ALL_TL HL 串起来后语句执行的像蜗牛一样慢啊,用户每次跑个报表是都会抱怨说在挑选参数时太慢。不得不优化语句啊。后来想用用oralce 的优化器rule(基于规则)来优化语句。但是依然很慢。无意间看到了Use_NL转载 2013-08-27 15:12:08 · 1534 阅读 · 0 评论 -
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 I转载 2013-08-15 11:41:43 · 533 阅读 · 0 评论 -
oracle函数整理---cast函数
注意:可以直接将几个栏位直接转换成table,varray,Collection,Nested Table。此时需结合multiset集合函数一起使用。1、转换一个栏位或值语法:cast( 栏位名/值 as 数据类型 )参数解释:1)栏位名/值 表中的栏位名 2)数据类型 转换后的数据类转载 2013-08-27 12:52:34 · 1419 阅读 · 0 评论 -
如何彻底的删除Oracle表
Oracle 10g 中出现表名:BIN$2cMp4FjwQ2Cw3Lj+BxLYTw==$0 最近发现Oracle中出现了这些奇怪的表名,上网查找后发现是oracle10g的回收站功能,并没有彻底的删除表,而是把表放入回收站,最后就出现了这样一堆奇怪的表名。。。。 清除的方法如下: purge table origenal_tableName; purge index orig转载 2013-08-22 14:31:34 · 992 阅读 · 0 评论 -
Oracle虚拟列
Oracle11g增加了表的虚拟列,这个列的数据并没有存储在数据文件中,而是Oracle通过列数据的生成放到了数据字典中。虚拟列的数值是通过真实列中的数据计算而来的。虚拟列的位置可以放在它参考的列的前面,也可以包括多个实际列的值,但是不能引用其他的虚拟列:SQL> CREATE TABLE yu_test2 (c_vl_1 NUMBER, c_vl_2 AS (c_vl_1+1) )转载 2013-08-12 15:21:37 · 1653 阅读 · 0 评论 -
oracle 使用leading, use_nl, rownum调优
1、使用leading和use_nl来设置表的查询顺序,来加快查询速度,一般把小表设为第一个表。/*+LEADING(TABLE)*/ 将指定的表作为连接次序中的首表./*+USE_NL(TABLE)*/ 将指定表与嵌套的连接的行源进行连接,并把指定表作为内部表.成本计算方法:设小表100行,大表100000行。两表均有索引:如果小表在内,大表在外(驱动表)转载 2013-08-26 11:15:39 · 7305 阅读 · 1 评论 -
ORA-00979 不是 GROUP BY 表达式”
ORA-00979 不是 GROUP BY 表达式”这个错误,和我前面介绍的另外一个错误ORA-00937一样使很多初学oracle的人爱犯的。我在介绍使用聚合函数中用group by来分组数据时特别说明了select列表项中不存在的列可以出现在group by的列表项中,但反过来就不行了,在select列表项中出现的列必须全部出现在group by后面(聚合函数除外)但一些朋转载 2013-08-13 17:43:50 · 1023 阅读 · 0 评论