//通过编写的连接类创建一个连接
江门网站制作公司哪家好,找成都创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。成都创新互联于2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联。
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使用merge into 编写存储过程 遇编译错误,是设置错误造成的,解决方法如下:
1、首先新建存储过程,Create or Replace Procedure CHK_SYS_EMP 检查系统工号。
2、定义参数及变量:(TREV IN VARCHAR2,TRES OUT VARCHAR2) IS C_EMP VARCHAR2(25)。
3、存储过程框架用Begin开始,End结束。
4、查看需要调用表的结构以及相关字段。会用到表中的 EMP_NO ENABLED。
5、存储过程按需添加SQL语句,最后程序运行测试没问题就完成了 。
Oracle中出现无效对象,就是因为在创建函数或存储过程等,里边的内容书写不正确导致。如果要重新编译,需要先修正错误,然后编译。
工具:Oracle 10g、PL/SQL
步骤:
1、在PL/SQL中打开出现编译错误的函数或存储过程,这里以存储过程为例。
2、右键点击该存储过程,选择“编辑”。
3、根据错误提示,找到错误,并修改错误。
4、改正错误后,点击左上方的“齿轮”状按钮。
5、运行成功后,则该存储过程就会变为编译成功的状态。
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.批量编译视图的存储过程
sqlplus有相关的了命令:比如alter procedure prodedure_name compile;
第一次编译的时候只要在后面加一个/当做执行符号,那么就可以进行编译。
要使用 OMPT,需要在系统上安装和运行 Oracle Solaris 11。除了安装过程中使用的 root 权限之外,运行任何 OMPT 实用程序通常无需任何其他特殊权限。
如果您想编译 MPI 程序,则需要安装 Oracle Solaris Studio 12.1 或更高版本。在运行 MPI 程序的节点集群上,可以在其中一个节点上安装 Oracle Solaris Studio 并仅在该节点上编译 openmpi-15 程序包,但在所有节点上都安装该程序包。
要获取 OMPT,请安装 openmpi-15 程序包,该程序包由一个映像包管理系统 (IPS) 信息库托管,您的系统上应配置有该信息库。要验证是否配置了 IPS 信息库,请运行 pkg publisher 命令。
如果尚未 配置 IPS 信息库,请在尝试添加 openmpi-15 程序包之前配置它。否则,程序包添加将失败。
系统应配置了网络访问(如果是通过网络访问 IPS 信息库)或本地配置的从同一系统提供服务的 IPS 信息库。
本文示例使用了本地配置的 IPS 信息库,如 pkg publisher 命令的以下输出所示,该输出指示 IPS 信息库通过 HTTP 托管在 localhost 上。
root@solarix:/usr/share/distro_const# pkg publisher
PUBLISHER TYPE STATUS URI
solaris origin online
验证配置了信息库之后,以 root 身份运行 pkg install openmpi-15 命令添加该分发构造器程序包。然后从 IPS 信息库下载 openmpi-15 程序包并立即安装。
pkg install openmpi-15 命令显示进程的状态,如清单 1 所示,这样便于观察进度。
清单 1:pkg install openmpi-15 命令的输出
root@solarix:~# pkg install openmpi-15
Creating Plan
Packages to install: 2
Create boot environment: No
DOWNLOAD PKGS FILES XFER (MB)
service/picl 0/2 0/1430 0.0/11.9[K
developer/openmpi-15 1/2 1430/1430 11.9/11.9[K
Completed 2/2 1430/1430 11.9/11.9[K
PHASE ACTIONS
Install Phase 1639/1639
PHASE ITEMS
Package State Update Phase 1/2
Package State Update Phase 2/2
Image State Update Phase 1/2
Image State Update Phase 2/2
PHASE ITEMS
Reading Existing Index 1/8
Reading Existing Index 5/8
Reading Existing Index 8/8
Indexing Packages 2/2
安装完 openmpi-15 程序包之后,只需在 PATH 变量中包括 /usr/openmpi/ompi-15/bin,然后就一切准备妥当。
使用 OMPT 编译 MPI 程序
使用 OMPT 编译 MPI 程序有两种方式。您可以使用程序包中包含的编译器包装器(mpicc、mpiCC、mpif77 和 mpif90)或者直接调用编译器。
因为需要包含的 include、library 和 run 路径,建议采用第一种方法。包装器将其不了解的所有选项都传给 Oracle Solaris Studio 编译器,因此您应能够使用包装器实用程序替换 makefile 中编译器的所有实例。
以清单 2 作为示例 MPI 程序,可以使用一行命令编译程序:
mpicc hello.c -o hello.x
清单 2:示例 hello.c 程序
#include stdio.h
#include mpi.h
int main(int argc, char **argv) {
int np, me;
MPI_Init(argc,argv);
MPI_Comm_size(MPI_COMM_WORLD,np);
MPI_Comm_rank(MPI_COMM_WORLD,me);
printf("hello from %d of %d\n", me, np);
MPI_Finalize();
return 0;
}
还可以执行两阶段的编译和链接:
mpicc -c hello.c
mpicc hello.o -o hello.x
如果要直接执行编译器而不使用包装器,可以通过向包装器提供 -showme 选项来确定包装器使用的选项:
mpicc -showme hello.c -o hello.x
使用 OMPT 运行 MPI 程序
编译完可执行文件并与 OMPT 库链接之后,可以单独运行该程序或使用并行作业启动器实用程序 mpirun 来运行。
要单独运行程序,只需运行该可执行文件,就跟普通非并行可执行文件一样。但是,随后将由该程序来负责调用相应的 MPI API(如 MPI_Comm_spawn 或 MPI_Comm_spawn_multiple)来生成 MPI 作业的其他进程。
要一开始就创建运行多个进程的 MPI 作业,请使用 mpirun 实用程序。例如,如果您要使用总共 8 个进程在 2 个节点上运行我们的示例 MPI 程序,可以使用以下命令:
mpirun -np 8 -host hostname1,hostname2 hello.x
有几个选项可以与 mpirun 一起用来控制绑定、布局、输出重定向等等。通过执行 mpirun -h 或 man mpirun 可以获取有关这些选项的更多信息。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款