jdbc核心技术三--存储过程
2015-02-05 13:59
309 查看
存储过程是什么?
存储过程是一段代码,存储在数据库中,可以被程序调用
创建一个存储过程
create PROCEDURE SELECT_TESTTWO (IN TESTID LONG ,INOUT TESTALL VARCHAR(255))
BEGIN
SELECT `name` from test where id = TESTID INTO TESTALL;
END
创建存储过程指令:create PROCEDURE PROCEDURE_Name(输入,输出参数,可以有多个)
结构体
BEGIN sql END;
调用一个存储过程
[align=left]@Test[/align]
[align=left] public void test_PROCEDURE() throws Exception{[/align]
[align=left] Class .forName( "com.mysql.jdbc.Driver");[/align]
[align=left] Connection connection = DriverManager.getConnection( url, user, password);[/align]
CallableStatement callableStatement = connection.prepareCall( "call
SELECT_TESTTWO(?,?)");//调用存储过程
[align=left] callableStatement .setLong( 1, 1 );[/align]
[align=left] callableStatement .registerOutParameter( 2, Types.VARCHAR);[/align]
[align=left] callableStatement .execute();//执行存储过程[/align]
[align=left]// Assert.assertNotNull(callableStatement);[/align]
[align=left] System .out. println(callableStatement .getString( 2));[/align]
[align=left] }[/align]
显示所有的存储过程
show procedure status;
删除一个存储过程
drop PROCEDURE demo;
DROP PROCEDURE SELECT_test;
DROP PROCEDURE SELECT_testone;
存储过程的有点
提高效率,我们可以直接来使用
减少和数据库的通信,减少网络负担
存储过程是一段代码,存储在数据库中,可以被程序调用
创建一个存储过程
create PROCEDURE SELECT_TESTTWO (IN TESTID LONG ,INOUT TESTALL VARCHAR(255))
BEGIN
SELECT `name` from test where id = TESTID INTO TESTALL;
END
创建存储过程指令:create PROCEDURE PROCEDURE_Name(输入,输出参数,可以有多个)
结构体
BEGIN sql END;
调用一个存储过程
[align=left]@Test[/align]
[align=left] public void test_PROCEDURE() throws Exception{[/align]
[align=left] Class .forName( "com.mysql.jdbc.Driver");[/align]
[align=left] Connection connection = DriverManager.getConnection( url, user, password);[/align]
CallableStatement callableStatement = connection.prepareCall( "call
SELECT_TESTTWO(?,?)");//调用存储过程
[align=left] callableStatement .setLong( 1, 1 );[/align]
[align=left] callableStatement .registerOutParameter( 2, Types.VARCHAR);[/align]
[align=left] callableStatement .execute();//执行存储过程[/align]
[align=left]// Assert.assertNotNull(callableStatement);[/align]
[align=left] System .out. println(callableStatement .getString( 2));[/align]
[align=left] }[/align]
显示所有的存储过程
show procedure status;
删除一个存储过程
drop PROCEDURE demo;
DROP PROCEDURE SELECT_test;
DROP PROCEDURE SELECT_testone;
存储过程的有点
提高效率,我们可以直接来使用
减少和数据库的通信,减少网络负担
相关文章推荐
- 第十五天3月10日之JDBC案例、分页技术、大数据(文本、图片)存储、批处理和存储过程的调用
- 【学习摘记】马士兵JDBC技术_课时11_JDBC处理存储过程
- .Text分页技术(1)分页的存储过程分析
- [故纸堆三]存储过程技术
- Oracle复合类型参数的存储过程以及JDBC调用
- 校内相册发展过程及核心技术分析爆料
- 传智播客 JDBC基础之存储过程与批处理
- .Text分页技术(1)分页的存储过程分析
- 关于JDBC使用命名参数(named parameters)进行存储过程调用的问题
- 从疯狂痴迷数据库存储过程到彻底放弃他(信息化系统从基于数据库技术到基于服务理念的转变)
- JDBC调用存储过程基本流程(SXT)
- JDBC连接执行MySQL存储过程报空指针或权限错误
- Creating Complete JDBC Applications 关于JDBC应用的核心技术
- 技术揭密之:DedeCMS存储过程
- JDBC里取得Oracle存储过程动态结果集
- POSTGRESQL的JDBC中的存储过程
- 如何从 Java 存储过程将 JDBC ResultSet 作为 Ref Cursor 返回
- 通过JDBC创建Oracle的存储过程
- JDBC调用返回结果集的存储过程
- 通过jdbc调用存储过程