【Migrating Oracle 11g R2 To Oracle 19c】教程文章相关的互联网学习教程文章

Oracle-cursor动态游标【代码】

Oracle-cursor动态游标语法type 动态游标类型名 is ref cursor; ---- 声明一个动态游标类型,紫色填写一样内容游标名 动态游标类型; ---- 声明一个动态游标类型的变量,这个变量就是动态游标类型的,也就是动态游标open 游标名 for SQL语句; ---- 打开游标,并且把SQL语句和游标关联起来close 游标名;--创建过程createorreplaceprocedure proc_selectissql_select varchar(400);sql_row tablesp%rowtype;type cur_select is ref c...

Oracle 自定义聚合函数【代码】【图】

create or replace type str_concat_type as object (cat_string varchar2(4000),static function ODCIAggregateInitialize(cs_ctx In Out str_concat_type) return number,member function ODCIAggregateIterate(self In Out str_concat_type,value in varchar2) return number,member function ODCIAggregateMerge(self In Out str_concat_type,ctx2 In Out str_concat_type) return number,member function ODCIAggregateTermin...

Oracle PL/SQL块之函数

以下测试案例所用的表均来自与scott方案,使用前,请确保该用户解锁1、简介函数用于返回特定的数据,当建立函数时,函数头部必须包含return子句,而在函数体内必须包含return语句返回的数据,我们可以使用create function来建立函数。 2、函数小案例2.1、根据输入雇员的姓名,原文:http://www.cnblogs.com/GreenLeaves/p/6664864.html

Oracle批量执行脚本文件【代码】

以下是Oracle批量执行脚本文件的步骤和方法1、创建脚本文件(xx.sql):例如文件CreateTableCreate table tb1( id varchar2(30), Name varchar2(50) ); Commit; / 可以创建多个,但是要注意语句之间要以分号结尾,同时注意语句内尽量不要有空行,因为空行的时候,在批量执行时可能会报错。例如创建表时create table t( id varchar2(20), Name varchar2(30));上面这个文件在批量执行时,会执行不通过,提示“)”为非法语句。把括号之...

Oracle启动停止规范

本启动停止规范适用于单实例数据库。 一. 启动数据库:sqlplus / as sysdbaSQL> startup启动成功后,启动监听lsnrctl status启动监听后,动态监听需要等待一分钟左右,才可以将服务注册成功。或手动在SQLPLUS中发出alter system register;二. 关闭数据库:应用停掉停监听器ps -ef|grep LOCAL|wc -l[oracle@r11g ~]$ lsnrctl stop查看有没有JOB--如有需要确定是否停掉ps -ef|grep ora_j查看有没有事务还未提交的--如有事务未提交确认...

oracle求每月第一天和最后一天【代码】

1select to_date(last_day(sysdate)) from dual --最后一天2select to_date(trunc(add_months(last_day(sysdate), -1) +1)) from dual --第一天 原文:http://www.cnblogs.com/shikelong/p/4720428.html

Oracle中组合索引的使用详解(转)

在Oracle中可以创建组合索引,即同时包含两个或两个以上列的索引。在组合索引的使用方面,Oracle有以下特点: 1、 当使用基于规则的优化器(RBO)时,只有当组合索引的前导列出现在SQL语句的where子句中时,才会使用到该索引; 2、 在使用Oracle9i之前的基于成本的优化器(CBO)时, 只有当组合索引的前导列出现在SQL语句的where子句中时,才可能会使用到该索引,这取决于优化器计算的使用索引的成本和使用全表扫描的成本,O...

oracle count函数【代码】【图】

用来返回查询的行数。当指定distinct时,不能接order_by_clause; 如果指定表达式,count返回表达式不为空的值; 当指定*号时,它返回所有行,含重复行和空值。count从不返回null; count(*) 与 count(1) 执行结果相同,但1并不是指第一列。列名为参数时,查的是不含NULL值的行数;Aggregate Examples (聚合)-- 含重复行和空值,所有行 SELECT COUNT(*) "Total" FROM employees; SELECT COUNT(1) "Total" FROM employees;Total -...

Oracle锁表查询和解锁方法【图】

Oracle锁表查询和解锁方法qhzhen9 2019-05-22 10:07:07 8822 收藏 7展开我们这里一般用的PL/SQL,总是无意间把表锁住,所以我今天就整理了一下简单的解锁和查询锁表的方法;一、首先PL/SQL要以管理员的账号(system/admin等)登录,管理员的账号和密码根据个人设置而来,连接为一般选择Normal,也可选择SYSDBA; 二、相关SQL语句:--以下几个为相关表SELECT*FROMv$lock;SELECT*FROMv$sqlarea;SELECT*FROMv$session;SELECT*FROMv$pro...

Oracle sql%rowcount 返回影响行数;sql server @@RowCount返回影响行数【代码】

sql server中,返回影响行数是:If @@RowCount<1 Oracle中,返回影响行数是:If sql%rowcount<1 例:sqlserver:createprocedure Proc_test@Statint=0,@MsgIdvarchar(50)=‘‘, ASBEGINUpdate T_Mt Set Stat=@Stat,OStat=@Stat,RptTime=Getdate() Where MsgId=@MsgIdIf@@RowCount<1--没有更新成功就插入到t_Statbuf insertinto t_statbuf(MsgId,Stat,RptTime) values(@MsgId,@Stat,Getdate()) ENDoracle:CREA...

使用DBMS_JOB包创建ORACLE定时任务

在Oracle的包里面,有一个名字叫做DBMS_JOB的包,它的作用是安排和管理作业队列。通过作业队列,可以让Oracle数据库定期执行特定的任务。当使用DBMS_JOB管理作业的时候,必须确保设置了初始化参数JOB_QUEUE_PROCESSES(不能为0)。 1、 SUBMIT该过程用于建立一个新的作业,当建立作业的时候,需要通过设置相应的参数来告诉Oracle要执行的内容,要执行的时间,要执行任务的间隔。如下格式:DBMS_JOB.SUBMIT( JOB OUT BINARY_INTER...

C# 连接Oracle数据库,免安装oracle客户端【代码】【图】

一、方案1首先下面的内容,有待我的进一步测试和证实。18.12.20被证实了,还需要安装Oracle客户端,或者本机上安装oracle数据库软件。 18.12.20 1.下载Oracle.ManagedDataAccess.dll2.添加到C#引用3.命名空间引用using Oracle.ManagedDataAccess.Client;4. 连接参数的获取然后打开Oracle安装的文件夹,以Oracle10为例D:\Oracle10\NETWORK\ADMIN\tnsnames.ora,打开这个文件,会看到如果没有请按照图片内容输入即可,host=[主机名称]...

oracle中merge方法

先看SQL语句:merge into employee e using emps em on (e.emp_id=em.emp_id)when matched then update set e.emp_name=em.emp_namewhen not matched then insert values (em.emp_id,em.emp_name)  1.将emps表中的数据更新到employee表中,以主键匹配,如果主键匹配就执行update语句,如果不匹配则执行insert语句,需要注意的是,如果emps表中的数据均匹配employee表的数据,则不能写insert语句,也可以指处理匹配的情况,即没有...

Environment variable ORACLE_UNQNAME not defined.Please set ORACLE_UNQNAME to database unique name.【图】

emctl status dbconsole这应该是EM没有装导致的,Oracle官方文档并没有关于ORACLE_UNQNAME的设置(也可能是我没有搜到)。网上关于这个报错,有解决方法(对错不去评价),export ORACLE_UNQNAME=$ORACLE_SID,我这里再操作一遍原~/.bash_profile添加ORACLE_UNQNAME,然后应用source .bash_profile然后再执行emctl status dbconsole又会出现新的问题:0C4J Configuration issue.我就不继续了。个人的想法是emctl是管理em的,如果em都没...

Migrating from Oracle ASMLIB to ASM Filter Driver【代码】【图】

ASM Filter Driver是一个可以取代 ASMLIB 和 udev 设置的新功能,它可以一举取代 ASMLIB 和手动设置 udev rules 文件的繁琐,并且最重要的是 I/O Filter 功能。所谓的I/O Filter功能可以拒绝所有无效的 I/O 请求,最主要的作用是防止意外覆写 ASM 磁盘的底层盘,在后面的测试中可以看到对于 root 用户的 dd 全盘清零这样的变态操作也都是可以过滤的。 1、查询集群状态[root@odb02 ~]# crsctl check cluster -all *****************...