![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Oracle
文章平均质量分 78
wzg0571
这个作者很懒,什么都没留下…
展开
-
oracle分区表总结
在ORACLE里如果遇到特别大的表,可以使用分区的表来改变其应用程序的性能。同事的分区表总结,转载一下。1.1 分区表PARTITION table在ORACLE里如果遇到特别大的表,可以使用分区的表来改变其应用程序的性能。1.1.1 分区表的建立: 某公司的每年产生巨大的销售记录,DBA向公司建议每季度的数据放在一个分区内,以下示范的是该公司1999年的数据(假设每...原创 2010-05-07 23:47:37 · 139 阅读 · 0 评论 -
如何把数据导入不同的表空间
文章来源:http://blog.csdn.net/jimhou/archive/2005/08/01/443616.aspx很多人在进行数据迁移时,希望把数据导入不同于原系统的表空间,在导入之后却往往发现,数据被导入了原表空间。本例举例说明解决这个问题:1.如果缺省的用户具有DBA权限那么导入时会按照原来的位置导入数据,即导入到原表空间$ imp bjbbs/pass...原创 2010-07-27 21:25:09 · 84 阅读 · 0 评论 -
Oracle常用经典SQL查询
oracle常用经典SQL查询常用SQL查询:1、查看表空间的名称及大小select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizeFrom dba_tablespaces t, dba_data_files dWhere t.tablespace_name = d.tablespace_name...原创 2010-05-16 13:56:50 · 239 阅读 · 0 评论 -
in 和 Exists的用法区别
1.EXISTS的执行流程 select * from t1 where exists ( select null from t2 where y = x )可以理解为: for x in ( select * from t1 ) loop if ( exists ( select null from t2 where y = x.x ...原创 2010-06-18 10:48:51 · 81 阅读 · 0 评论 -
sql 中 case when 语法
sql语言中有没有类似C语言中的switch case的语句?? 没有,用case when 来代替就行了. 例如,下面的语句显示中文年月 select getdate() as 日期,case month(getdate()) when 11 then '十一' when ...原创 2010-06-29 09:54:33 · 66 阅读 · 0 评论 -
java中调用ORACLE存储过程
一:无返回值的存储过程 存储过程为: CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS BEGIN INSERT INTO HYQ.B_ID (I_ID,I_NAME) VALUES (PARA1, PARA2); END TESTA; 然后呢,在java里调用时就用下面的代码...原创 2010-11-25 20:20:22 · 64 阅读 · 0 评论 -
Oracle导入/导出数据库的语法
oracle中除了在Oracle编辑器中用图形化的方式导入文理文件的数据方式外,还可以采用命令行的方式导入数据库,其语法实示例如下: ...原创 2010-11-25 22:46:05 · 126 阅读 · 0 评论 -
oracle命令集合
Oracle 命令集合 制作人: 陈杉1、 创建表空间:create tablespace 表空间名称 datafile ‘文件地址以及文件名’ [ size ] [ autoextend [ on | off ] ]; 注:【 size 】 表示要创建的表空间的大小。单位可以为 K 或者 M。 【 autoextend 】 表示创建的表空间是否...原创 2010-11-25 22:47:52 · 106 阅读 · 0 评论 -
Oracle 常用SQL技巧收藏
1. SELECT子句中避免使用 “*” 当你想在SELECT子句中列出所有的COLUMN时,使用动态SQL列引用 ‘*’ 是一个方便的方法.不幸的是,这是一个非常低效的方法. 实际上,ORACLE在解析的过程中, 会将“*” 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间. 2.使用DECODE函数来减少处理时间 使用DECODE函数可以避免...原创 2010-11-27 20:10:29 · 75 阅读 · 0 评论 -
定时自动操作数据库——Oracle JOB 用法小结
Sql代码 一、设置初始化参数 job_queue_processes sql> alter system set job_queue_processes=n;(n>0) job_queue_processes最大值为1000 查看job queue 后台进程 sql>select name,de...原创 2010-11-27 20:25:20 · 89 阅读 · 0 评论 -
在Oracle中实现定时操作
常要oracle数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等等的工作,这时需要用到一个函数dbms_job.submit,来完成Oracle定时器Job时间的处理上。使用dbms_job.submit这个函数,我们只需要考虑两个事情:安排某一任务,和定制一个执行任务的时间点。但最重要也是最棘手的事情,我认为还是确定一个执行任务的时间点。时间点确...原创 2010-11-27 22:16:42 · 155 阅读 · 0 评论 -
为Oracle增加计划任务
经常在SQL Server上创建作业去定时执行某些任务,在Oracle下则一般都是通过编码的方式,通过项目自带的计划任务框架去调用存储过程。今天才发现,原来Oracle下创建一个计划任务要比SQL Server简单的多。 1、创建计划任务: Sql代码 X NUMBER; GIN SYS.DBMS_JOB.SUBMIT(j...原创 2010-11-27 22:20:05 · 93 阅读 · 0 评论 -
Oracle创建删除用户、角色、表空间、导入导出、...命令总结
//创建临时表空间 create temporary tablespace zfmi_temp tempfile 'D:\oracle\oradata\zfmi\zfmi_temp.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; //tempfile参数必须有 //创建数据表空间 create ...原创 2010-11-27 22:25:02 · 99 阅读 · 0 评论 -
ORACLE JOB 设置
Job的参数: 一:时间间隔执行(每分钟,每天,每周,:每月,每季度,每半年,每年) interval是指上一次执行结束到下一次开始执行的时间间隔,当interval设置为null时,该job执行结束后, 就被从队列中删除。假如 我们需要该job周期性地执行,则要用‘sysdate+m’表示。 1:每分钟执行 Interval => TRUNC(...原创 2010-11-27 23:52:03 · 112 阅读 · 0 评论 -
oracle 游标以及游标变量
ORACLE 游标 一. PL/SQL 是用游标来管理 SQL 的 SELECT 语句的 . 游标是为了处理这些语句而分配的一大块内存 . 它提供了对一个结果集进行逐行处理的能力 , 可看作是一种特殊的指针 . 它与某个查询结果集相关联 , 可以指向结果集的任意位置 , 以便对指定位置的数据进行处理 . 使用它可以在查询数据的同时对数据进行处理 . 二. 游标的分类 : 静...原创 2010-05-14 13:23:53 · 90 阅读 · 0 评论 -
ORACLE存储过程
1 、创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out type) as -- 声明变量( 变量名 变量类型),用as来代替declare begin -- 存储过程的执行体 end test; 打印出输入的时间信息 E.g: creat...原创 2010-05-14 13:22:58 · 69 阅读 · 0 评论 -
oracle pl/sql
ORACLE PL/SQL 1. PL/SQL 是 SQL 语言存储过程的扩展 , 包括两部分 : 一部是数据库引擎部分 , 另一部分是可嵌入到其他许多产品 (C,JAVA) 工具中的独立引擎 . 可将这两部分称为数据库 PL/SQL 和工具 PL/SQL. 以下介绍的是数据库 PL/SQL 2. PL/SQL 语言由以下几部...原创 2010-05-14 13:22:07 · 175 阅读 · 0 评论 -
Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行, DOS中可以执行时由于 在oracle 8i 中 安装...原创 2010-05-07 23:49:42 · 66 阅读 · 0 评论 -
oracle 自增长标识列实现方法:sequence和trigger
我们用实例说明具体的用法。先假设有这么一个表:create table S_Depart ( DepartId INT not null, DepartName NVARCHAR2(40) not null, DepartO...原创 2010-05-07 23:54:43 · 96 阅读 · 0 评论 -
oracle表空间操作 & CREATE TABLESPACE命令
select *from dba_tableswhere OWNER='peter'--建立表空间(oracle中的tablespace(表空间)就相当于sqlserver的database) CREATE TABLESPACE data01DATAFILE 'D:\oracle\ora92\oradata\db\DATA01.dbf' SIZE 200MUNIFORM SIZE 128...原创 2010-05-07 23:56:36 · 212 阅读 · 0 评论 -
Oracle创建用户、表空间、导入导出、...命令
//创建临时表空间create temporary tablespace test_temp tempfile 'E:\oracle\product\10.2.0\oradata\testserver\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048mextent management local;//创建数据...原创 2010-05-07 23:57:23 · 71 阅读 · 0 评论 -
在oracle存储过程返回数据集
返回数据集请参考如下存储过程实例:CREATE OR REPLACE PACKAGE pkg_test AS TYPE myrctype IS REF CURSOR; PROCEDURE get (p_id NUMBER, p_rc OUT myrctype); ...原创 2010-05-08 00:00:13 · 104 阅读 · 0 评论 -
oracle trunc()函数的用法
关于TRUNC函数的format,自己现在有点体会,format为day时,只精确到天,而不管几年几月只要是符合的day就可以了,要想确定一年中的某月的某一天就要用trunc(date,''dd'').通俗的说吧,format为年时,精确到-----年为月时,精确到------年,月(不管哪年,只要是相同的月和哪天)为日时,精确到------年,月,日(不管哪年的哪月,只关心是...原创 2010-05-12 09:52:19 · 63 阅读 · 0 评论 -
Oracle中Decode()函数使用技巧
decode()函数是ORACLE PL/SQL是功能强大的函数之一,目前还只有ORACLE公司的SQL提供了此函数,其他数据库厂商的SQL实现还没有此功能。 DECODE函数是ORACLE PL/SQL是功能强大的函数之一,目前还只有ORACLE公司的SQL提供了此函数,其他数据库厂商的SQL实现还没有此功能。DECODE有什么用途呢? 先构造一个例子,假设我们想给智星职员加工资,...原创 2010-05-12 09:57:14 · 61 阅读 · 0 评论 -
plsql 中配置远程数据库连接
// 数据库配置文件目录E:\oracle\ora92\network\admin\tnsnames.ora(数据库名)FWMSDB =(DESCRIPTION = (ADDRESS_LIST = 服务器ip (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.6.40)(POR...原创 2010-05-13 13:55:01 · 176 阅读 · 0 评论 -
Oracle数据库中分区表的操作方法
摘要:在大量业务数据处理的项目中,可以考虑使用分区表来提高应用系统的性能并方便数据管理,本文详细介绍了分区表的使用。 在大型的企业应用或企业级的数据库应用中,要处理的数据量通常可以达到几十到几百GB,有的甚至可以到TB级。虽然存储介质和数据处理技术的发展也很快,但是仍然不能满足用户的需求,为了使用户的大量的数据在读写操作和查询中速度更快,Oracle提供了对表和索引进行分区的技术,以...原创 2010-05-13 23:40:05 · 60 阅读 · 0 评论 -
Oracle手工创建数据库的步骤
Oracle除自带的DBCA可以创建数据库以为,还有另外一种创建方法,就是手动创建数据库,也是作为DBA人员必须要掌握的。下面就介绍一下手动创建数据库的步骤: 手动创建数据库通常包含如下操作步骤: 1、确定新建数据库名称和实例名称; 2、确定数据库管理员的认证方式; 3、创建初始化参数文件; 4、创建实例; 5、连接并启动实例; 6、使用create database语...原创 2010-05-13 23:41:18 · 143 阅读 · 0 评论 -
ORACLE 数据库名、实例名、ORACLE_SID的区别
数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID) 在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名(db_domain)、服务名(service_name)、以及操作系统环境变量(ORACLE_SID)。这些都存在于同一...原创 2010-05-13 23:45:19 · 126 阅读 · 0 评论 -
oracle过程,函数,程序包
过程,函数,程序包之前学习的PL/SQL块是匿名的,不能将其存储到数据库中。我们可以命名我们的PL/SQL块,并为他们确定参数,存储在数据库中。这样可以从任何数据库客户端或者工具引用和运行他们,比如SQL*PLUS, Pro*C, JDBC。这些命名的PL/SQL块成为存储过程和函数,他们的集合成为程序包。优点:1. 可重用性:一旦命名并保存在数据库中后,任何应用都可以...原创 2010-05-13 23:47:12 · 164 阅读 · 0 评论 -
oracle中的四种连接
1. 连接 : 将两个表 ( 或多个表 ) 中的行按照给定的条件进行拼接而形成的新表 . 连接和子查询都要操作两个类或多个表 , 他们的区别是 : 连接可以合并两个表或多个表的数据 , 而带子查询的 SELECT 语句的结果只能来自一个表 , 子查询的结果仅仅是用作筛选结果的参照 . 因为在三种子查询中 , 均是针对某个表中的某一列值来判断的 . 在查询中使用子查询可以使查询逻辑更为清...原创 2010-05-14 13:20:52 · 266 阅读 · 0 评论 -
Oracle插入数据时获取自增ID
自增字段: 表atable(id,a) id需要自增 首先建立一个序列: create sequence seq_atable minvalue 1 maxvalue 999999999999999999 start with 1 increment by 1 nocache 有二种方式使用自增字段: 使用序列+触发器实现自增,插入语句不需要管自增字段 如:create or replace tr...原创 2010-12-07 13:09:36 · 135 阅读 · 0 评论