189 8069 5689

oracle怎么一键编译 oracle重新编译package

如何重编译ORACLE数据库的无效对象

Oracle中出现无效对象,就是因为在创建函数或存储过程等,里边的内容书写不正确导致。如果要重新编译,需要先修正错误,然后编译。

成都创新互联-专业网站定制、快速模板网站建设、高性价比武清网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式武清网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖武清地区。费用合理售后完善,十载实体公司更值得信赖。

工具:Oracle 10g、PL/SQL

步骤:

1、在PL/SQL中打开出现编译错误的函数或存储过程,这里以存储过程为例。

2、右键点击该存储过程,选择“编辑”。

3、根据错误提示,找到错误,并修改错误。

4、改正错误后,点击左上方的“齿轮”状按钮。

5、运行成功后,则该存储过程就会变为编译成功的状态。

Oracle有没有命令可以编译存储过程

sqlplus有相关的了命令:比如alter procedure prodedure_name compile;

第一次编译的时候只要在后面加一个/当做执行符号,那么就可以进行编译。

oracle中如何批量编译视图和存储过程

1.批量编译存储工程的存储过程

create or replace procedure compile_invalid_procedures(

p_owner varchar2 -- 所有者名称,即 SCHEMA) as--编译某个用户下的无效存储过程

str_sql varchar2(200);begin

for invalid_procedures in (select object_name from all_objects

where status = 'INVALID' and object_type = 'PROCEDURE' and owner=upper(p_owner))loop

str_sql := 'alter procedure ' ||invalid_procedures.object_name || ' compile';begin

execute immediate str_sql;exception

--When Others Then Null;

when OTHERS Then

dbms_output.put_line(sqlerrm);end;end loop;end;

2.批量编译视图的存储过程

oracle数据库如何编译sqc文件

//通过编写的连接类创建一个连接

dbconn db = new dbconn();

Connection con1 = db.conn;

String callSQL1 = new String();

ResultSet rs1 = null;

//创建一个CallableStatement变量st1来调用存储过程信息

CallableStatement st1 = null;

try {

st1 = con1.prepareCall("{ call p(?,?,?,?) }");

st1.setString(1, "参数1");

st1.setString(2, "参数2");

st1.setString(3, "参数3");

st1.registerOutParameter(4,Types.INTEGER); //此处4 代表第一个"?" 则表示存储过程返回的值 这里要注意Types的类型,当需要有返回值时

st1.execute();

System.out.println(st1.getInt(4));//输出存储过程的返回值,当有返回值时

} catch (Exception error) {

try {

con1.rollback(); //操作不成功则回退

} catch (Exception ex9) {

ex9.printStackTrace();

}

out.print("系统出错" + error.getMessage());

} finally {

try {

if (st1 != null) {

st1.close();

}

} catch (Exception error) {

}

db.disconnect();

}


分享文章:oracle怎么一键编译 oracle重新编译package
标题URL:http://jkwzsj.com/article/hihjip.html

其他资讯