Oracle

Oracle 创建索引的基本规则总结

一、B-Tree索引1.选择索引字段的原则:在WHERE子句中最频繁使用的字段联接语句中的联接字段选择高选择性的字段(如果很少的字段拥有相同值,即有很多独特值,则选择性很好)ORACLE在UNIQUE和主键字段上自动建立索引在选择性很差的字段上建索引只有在这个字段的值分布非常倾斜的情况下才有益(在这种情况下,某一,两个字段值比其它字段值少出现很多)不要在很少独特值的字段上建B-TREE索引,在这种情况下,你可以考虑在这些字段上建位图索引.在联机事务处理环境

系统 2019-08-12 01:54:12 2319

Oracle

oracle建立索引原则

索引需要平衡query和DML的需要,常用于(子)查询的表应建立索引;把索引建到不同的表空间中;用统一的extent大小:五个block的倍数或者tablespace指定的MINIMUMEXTENT的倍数;创建索引考虑用NOLOGGING参数,重建索引的时候也一样;创建索引时INITRANS值应该比相应的table的值高一些;对常用SQL语句的where条件中的列建立唯一索引或组合索引,组合条件查询中相应的组合索引更有效;对于组合索引,根据列的唯一值概率,

系统 2019-08-12 01:53:21 2319

Oracle

[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序

原文:[推荐]ORACLEPL/SQL编程详解之一:PL/SQL程序设计简介(千里之行,始于足下)[推荐]ORACLEPL/SQL编程详解之一:PL/SQL程序设计简介(千里之行,始于足下)——通过知识共享树立个人品牌。继上六篇:[顶]ORACLEPL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)[推荐]ORACLEPL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)[推荐]ORACLEPL/SQL编程之四:

系统 2019-08-12 01:52:27 2319

Oracle

cx_Oracle模块学习之绑定变量

有些时候我们需要和程序交互,此时需要绑定量下面两个例子简介在SELECT和DML里面绑定变量的用法SELECT里面的绑定变量[root@Ora10Gpy]#catSelectBinding.py#!/bin/envpython#coding=utf-8#filename:execisebindinginselect#Author:DBA_WaterBinimportcx_Oracleconn=cx_Oracle.connect('hr/hr@orcl')c

系统 2019-08-12 01:52:10 2319

Oracle

利用Oracle CRS搭建应用的高可用集群

前言:CRS的简介和由来从Oracle10gR1RAC开始,Oracle推出了自身的集群软件,这个软件的名称叫做OracleClusterReadyService(Oracle集群就绪服务),简称CRS。从Oracle10gR2开始,包括最新的11g,Oracle将其更名为Clusterware(集群件),但通常意义上我们认为CRS=Clusterware=OracleClusterReadyService=OracleClusterSoftware.CR

系统 2019-08-29 23:51:50 2318

Oracle

Oracle 利用 rowid 提升 update 性能

关于ROWID的介绍参考我的Blog:OracleRowid介绍http://blog.csdn.net/tianlesoftware/archive/2009/12/16/5020718.aspx关于大表Update的一个讨论,参考itpub:http://www.itpub.net/viewthread.php?tid=1052077一.在虚拟机上使用rowid进行update测试使用rowid进行update能提高速度,是因为通过rowid能够迅速的

系统 2019-08-29 23:00:27 2318

MySql

mysql登录报错“Access denied for user 'root'

首先进入MYsql的安装目录,我的是在C盘C:\ProgramFiles\MySQL,然后进入其中的bin目录\MySQLServer5.5\bin从开始->cmd,打开命令行,进入刚才的bin文件夹C:\ProgramFiles\MySQL\MySQLServer5.5\bin然后依次输入下列命令即可:#mysql-urootmysqlmysql>UPDATEuserSETPassword=PASSWORD(’newpassword’)whereUSER

系统 2019-08-12 01:55:08 2318

Oracle

oracle update 分次提交

这里我插入1999条记录,然后把记录中xxx为非33的全部更新为33,分20次提交,1次提交100条,比较下更新前后xxx为33的记录个数就知道对不对了SQL>CREATETABLEtest(IDVARCHAR2(20),xxxNUMBER);TablecreatedSQL>INSERTINTOtestSELECTlpad(ROWNUM,4,'0'),mod(ROWNUM,34)FROMdualCONNECTBYLEVEL<2000;1999rowsins

系统 2019-08-12 01:55:01 2318

Oracle

oracle pl/sql 中的触发器

oracle11g将触发器分为5种:1.DDL触发器:当在数据库中创建、修改、重命名、删除对象时触发。2.DML或行级别触发器:当在表中插入、更新或删除数据时触发;可用于在值被改变前(before)进行审核、检查、保存、和替代。3.复合触发器:既是语句级又是行级触发器。在需要同时使用语句级触发器和行级触发器时可以使用复合触发器。4.insteadof触发器:用于停止DML语句的执行并重定向DML语句,即视图触发器。5.系统或数据库事件触发器:用于跟踪系统事

系统 2019-08-12 01:54:55 2318

Oracle

Oracle中查询正锁表的用户及释放被锁的表的方法

查询oracle锁定的表及杀掉锁表的进程,注意查看的时候要用sys/sys管理员的身份登录1、首先查看锁定的表太进程:SELECTsubstr(v$lock.sid,1,4)"SID",serial#,V$SESSION.sid,substr(username,1,12)"UserName",substr(object_name,1,25)"ObjectName",v$lock.type"LockType",www.2cto.comdecode(rtrim

系统 2019-08-12 01:54:19 2318

Oracle

Oracle分析函数手册

Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是对于每个组返回多行,而聚合函数对于每个组只返回一行。下面例子中使用的表来自Oracle自带的HR用户下的表,如果没有安装该用户,可以在SYS用户下运行$ORACLE_HOME/demo/schema/human_resources/hr_main.sql来创建。除本文内容外,你还可参考:ROLLUP与CUBEhttp://xsb.itpub.net/pos

系统 2019-08-12 01:52:10 2318

Oracle

学习Oracle数据库(2)-SQLPLUS介绍

SQLPLUS介绍SQLPLUS是ORACLE公司开发的很简洁的管理工具,SQLPLUS是最好的,最核心的ORACLE管理工具。SQLPLUS简洁而高效,舍弃浮华,反璞归真。使用sqlplus,进入sqlplus并进行简单的操作目的是熟悉oracle的小工具sqlplus的使用。1、如何进入SQLPLUS界面进入DOS,然后键入如下命令C:\>sqlplus/nolog进入字符界面C:\>sqlplusw/nolog进入windows界面,windows平

系统 2019-08-12 01:51:31 2318

数据库相关

索引的优化

发现一个SQL执行很慢,如下:select*fromrmes.r_wip_tracking_twt,cmes.c_material_tmwherem.material_type=1and(m.material_speclike'L%'orm.material_speclike'C%')andwt.model_id=m.material_idANDWT.sn>='1073H2H72270002'andWT.sn<='1073H2H72270002'计划分析后

系统 2019-08-12 01:51:30 2318

Oracle

oracle_五千万数据插入测试

1--创建表tab_a2--createtabletab_a(idintprimarykeynotnull,pidint);3--创建序列4/**5createsequenceseq_a6incrementby17startwith18nomaxvalue9nocycle10cache20;11**/12--创建存储过程13createorreplaceprocedurepro_a_insertis14iNUMBER(20);15begin16foriIn

系统 2019-08-12 01:54:50 2317

Oracle

oracle_深刻理解数据库的启动和关闭

Oracle数据库提供了几种不同的数据库启动和关闭方式,本文将详细介绍这些启动和关闭方式之间的区别以及它们各自不同的功能。一、启动和关闭Oracle数据库对于大多数OracleDBA来说,启动和关闭Oracle数据库最常用的方式就是在命令行方式下的ServerManager。从Oracle8i以后,系统将ServerManager的所有功能都集中到了SQL*Plus中,也就是说从8i以后对于数据库的启动和关闭可以直接通过SQL*Plus来完成,而不再另外需

系统 2019-08-12 01:54:48 2317