您当前的位置:首页 > 美文欣赏 > 内容

oracleexception(oracle异常求助)

本文目录

  • oracle异常求助
  • oracle 中的 exception when others then 捕获异常 在db2中怎么写
  • Oracle未知异常问题,怎么解决
  • C#OracleException无法抛出异常
  • oracle怎么获取exception信息
  • Oracle.DataAccess.Client.OracleException ORA-12154: TNS: 无法解析指定的连接标识符
  • oracle 存储过程发生异常错误执行的exception有日志记录么
  • oracle存储过程exception 后面的代码要不要end结束啊还是说exception后面的所有代码都属于它的呢
  • Oracle的自定义异常问题,急

oracle异常求助

完全下载后重装 一、在oracle11G以前卸载oracle会存在卸载不干净,导致再次安装失败的情况,在运行services.msc打开服务,停止Oracle的所有服务。二oracle11自带一个卸载批处理。\app\Administrator\product\11.2.0\dbhome_1\deinstall\deinstall.bat运行该批处理程序将自动完成oracle卸载工作,最后手动删除\app文件夹(可能需要重启才能删除)运行过程中可能需要填写如下项:指定要取消配置的所有单实例监听程序[LISTENER]:LISTENER指定在此 Oracle 主目录中配置的数据库名的列表 [MYDATA,ORCL]: MYDATA,ORCL(运行慢,需等待)是否仍要修改 MYDATA,ORCL 数据库的详细资料? [n]: nCCR check is finished是否继续 (y - 是, n - 否)? [n]: y三、运行regedit命令,打开注册表。删除注册表中与Oracle相关内容,具体下:删除HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE目录。删除HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services中所有以oracle或OraWeb为开头的键。删除HKEY_LOCAL_MACHINE/SYSETM/CurrentControlSet/Services/Eventlog/application中所有以oracle开头的键。删除HKEY_CLASSES_ROOT目录下所有以Ora、Oracle、Orcl或EnumOra为前缀的键。删除HKEY_CURRENT_USER/SOFTWARE/Microsoft/windows/CurrentVersion/Explorer/MenuOrder/StartMenu/Programs中所有以oracle 开头的键。删除HKDY_LOCAL_MACHINE/SOFTWARE/ODBC/ODBCINST.INI中除Microsoft ODBC for Oracle注册表键以外的所有含有Oracle的键。删除环境变量中的PATHT CLASSPATH中包含Oracle的值。删除“开始”/“程序”中所有Oracle的组和图标。删除所有与Oracle相关的目录,包括:(1)、c:\Program file\Oracle目录。(2)、ORACLE_BASE目录。(3)、c:\Documents and Settings\系统用户名、LocalSettings\Temp目录下的临时文件。

oracle 中的 exception when others then 捕获异常 在db2中怎么写

db2中类似oracle的异常捕获写法:举例如下:CREATE PROCEDURE OUT_LANGUAGE (...,OUT returnCode INTEGER, OUT returnMsg CHAR(32)) -- returnCode 返回执行中的的错误代码 -- returnMsg 返回执行中的的错误描述 SPECIFIC SQL_OUT_LANGUAGE LANGUAGE SQL BEGIN DECLARE SQLCODE INTEGER DEFAULT 0; DECLARE SQLSTATE CHAR(5) DEFAULT ´00000´; DECLARE errorLabel CHAR(32) DEFAULT ´´; ...... -- in case of no data found DECLARE CONTINUE HANDLER FOR NOT FOUND BEGIN SET returnCode = SQLCODE; -- 也可以设置为 SET returnCode = 0; 因为这个DECLARE是为了忽略NOT FOUND的执行结果 END; -- in case of SQL error DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN SET returnCode = SQLCODE; SET returnMsg = errorLabel; END;

Oracle未知异常问题,怎么解决

当与一个异常错误相关的错误出现时,就会隐含触发该异常错误。用户定义的异常错误是通过显式使用 RAISE 语句来触发。当引发一个异常错误时,控制就转向到 EXCEPTION块异常错误部分,执行错误处理代码。

对于这类异常情况的处理,步骤如下:

1、在PL/SQL 块的定义部分定义异常情况:

《异常情况》  EXCEPTION;

2、RAISE 《异常情况》;

3、在PL/SQL 块的异常情况处理部分对异常情况做出相应的处理。

例:更新指定员工工资,增加100;

DECLARE   v_empno employees.employee_id%TYPE :=&empno;   no_result  EXCEPTION;BEGIN   UPDATE employees SET salary = salary+100 WHERE employee_id = v_empno;   IF SQL%NOTFOUND THEN      RAISE no_result;   END IF;EXCEPTION   WHEN no_result THEN       DBMS_OUTPUT.PUT_LINE(’数据更新语句失败了!’);   WHEN OTHERS THEN      DBMS_OUTPUT.PUT_LINE(SQLCODE||’---’||SQLERRM);END;

1、弹出错误框:

示例代码:

declare

v_count number;

begin

select count(*) into v_count from dept;

if v_count 《 10 then

raise_application_error(-20001,’数量小于10’);

end if;

end;

执行结果:

2、控制台显示:

示例代码:

declare

v_count number;

my_exp exception;

begin

select count(*) into v_count from dept;

if v_count 《 10 then

raise my_exp;

end if;

exception

when my_exp then

dbms_output.put_line(’数量小于10’);

when others then

dbms_output.put_line(’其他异常’);

end;

执行结果:

PS:ORACLE 用户自定义异常小例子:   

CREATE OR REPLACE PROCEDURE test_Exception_byLeejin

(

ParameterA IN varchar,

ParameterB IN varchar,

ErrorCode OUT varchar --返回值,错误编码

)

AS

/*以下是一些变量的定义*/

V NUMBER;

V nvarchar();

V NUMBER;

APP_EXP EXCEPTION; --自定义异常

BEGIN

ErrorCode :=’’;

IF (ParameterA=ParameterB) THEN

ErrorCode := ’ParameterA = ParameterB’;

RAISE APP_EXP; -- 抛出异常

END IF;

EXCEPTION

WHEN APP_EXP THEN --在处理异常

RAISE_APPLICATION_ERROR(-,ErrorCode);

WHEN OTHERS THEN

RAISE_APPLICATION_ERROR(-,’未知异常’);

END;

C#OracleException无法抛出异常

最笨的方法就是,每执行一个代码Debug一个数字,看看不抛错的时候,执行了些几句话 ps,不需要处理的错误 请不要catch,开废开销的,如果你catch还要继续抛,请直接写throw,不要写throw ex

oracle怎么获取exception信息

  • 通过RAISE弹出框(调试时使用)

  • 通过sqlcode , sqlerrm 这两个内置变量来查看,

    例如:DECLARE --声明异常 some_kinds_of_err EXCEPTION; -- Exception to indicate an error condition v_ErrorCode NUMBER; -- Variable to hold the er..

  • 为了提高存储过程的健壮性,避免运行错误,当建立存储过程时应包含异常处理部分.

    Oracle.DataAccess.Client.OracleException ORA-12154: TNS: 无法解析指定的连接标识符

    TNS无法解析是Oracle操作里经常遇到的问题,原因有二:(1)Oracle服务器没有装好(一般不建议重装,因为Oracle卸载不完全是没法重装的)(2)TNS没有配置现在本文给出解决方案:现在先测试一下tns是否可以ping,成功的界面大致如下这里写图片描述(1)在oracle安装路径的tns配置文件里添加如下代码# tnsnames.ora Network Configuration File: d:\Oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora# Generated by Oracle configuration tools.ORCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = ORCL) ) )其中orcl是我的数据库名称,这个需要根据需要配置

    oracle 存储过程发生异常错误执行的exception有日志记录么

    一般我们会创建一张表用于记录所有异常信息,再写一个过程来处理(截取部分信息)并存储异常信息(包括发生异常的过程、触发器名称、异常信息、发生时间等),然后在整个数据库开发中,所有异常处理中调用该过程。这样可以随时查看那里出了问题。

    oracle存储过程exception 后面的代码要不要end结束啊还是说exception后面的所有代码都属于它的呢

    declare v varchar2(32);begin begin select dummy into v from dual where dummy = ’’; exception when others then dbms_output.put_line(’1’); end; dbms_output.put_line(’2’);end;可以自己试一下,把可能发生异常的代码放到begin end块中,exception后end前都属于异常执行范围,end后代码不在异常范围内。

    Oracle的自定义异常问题,急

    注释1声名了一个number类型的变量,总长7位,小数点后2位,名是annual_salazy注释2中的selectinto是不是将a.sal赋给了变量annual_salazy中注释3把annual_salazy的值作为函数的返回值。注释4exception是异常处理。当上面程序出现错误或select语句查不到记录时才执行。此函数总意思是:通过参数username调用了annual_incomec函数,查找emp表中名字为与参数一致的雇员的薪水(sal)。查到记录了返回该雇员的薪水;没查到则返回一个值空值。


    声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

    上一篇: xp系统下载u盘安装(在电脑上怎样把XP系统下载到U盘,并且装到我电脑里)

    下一篇: 猪血怎么煮才嫩,新鲜猪血怎么做好吃又嫩(教你煮生猪血的正确方法)



    推荐阅读

    网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号