Java呼叫儲存過程(帶輸出引數)
上星期老師佈置實驗,題目中有一個要求用Java來呼叫儲存過程。為了完成作業,在網上差了好些資料還看過視訊,現在終於有點眉目了。以為自己找的有點辛苦,想必其他人也會如此,因此想把自己程式設計的經驗和大家一塊分享。我也是初次使用java呼叫儲存過程,有什麼不對的地方還請大家指教,我在此謝過了。
java 程式設計工具使用myeclipse
資料庫使用sql server 2005
儲存過程
create proc denglu
@name char(20),
@pwd char(20),
@msg char(30) output
as
if exists(select * from user_table where Login_name = @name)
begin
if exists(select * from user_table where Login_name = @name and password = @pwd)
set @msg = '使用者名稱與密碼都正確,登陸成功'
else
set @msg ='密碼錯誤,請重新輸入'
end
else
set @msg = '使用者名稱不正確,請重新輸入'
java 程式碼
package world;
import java.sql.*;
public class Sql {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自動生成方法存根
String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String url = "jdbc:sqlserver://localhost:1433;databaseName=hystu";
Connection conn = null;
//Statement stmt = null;
try{
Class.forName(driver);
conn = DriverManager.getConnection(url, user_name,password)
if(conn != null ){
System.out.println("成功連線JDBC資料庫");
}
}catch(Exception ex){
ex.printStackTrace();
}
// 3、運算元據庫
// 通過Connection物件例項化Statement物件
String name = "stu1";//輸入的引數 1
String pwd = "111";//輸入的引數 2
CallableStatement call = null;
/*用‘?‘表示引數*/
String sql = "{ call denglu(?,?,?)}" ;
try
{
//Statement stmt = conn.createStatement() ;
// 為sql變數賦值
// 插入語句
call = conn.prepareCall(sql);
call.registerOutParameter(3, java.sql.Types.VARCHAR);//要向外輸出的引數,types.varchar表示輸出的引數是字串型別或是字元型
call.setString(1, name);//輸入第一個引數
call.setString(2, pwd);//輸入第二個引數
call.execute();//執行
System.out.println(call.getString(3));//輸出要輸出的引數
call.close();
}
catch(Exception e)
{
System.out.println("運算元據庫失敗!!!") ;
}
try{
conn.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
}
相關文章
- go 如何呼叫 sqlserver 帶傳出引數的儲存過程GoSQLServer儲存過程
- 呼叫儲存過程儲存過程
- mysql儲存過程的引數MySql儲存過程
- linux呼叫儲存過程Linux儲存過程
- Winform呼叫儲存過程ORM儲存過程
- SQL 儲存過程裡呼叫另一個儲存過程SQL儲存過程
- jsp中呼叫儲存過程JS儲存過程
- mysql如何呼叫儲存過程MySql儲存過程
- Sqlsugar呼叫Oracle的儲存過程SqlSugarOracle儲存過程
- JAVA儲存過程(轉)Java儲存過程
- 造數儲存過程儲存過程
- MySQL儲存過程語句及呼叫MySql儲存過程
- Oracle 儲存過程分頁 + Sqlsugar呼叫Oracle儲存過程SqlSugar
- 簡單的mysql儲存過程,輸出結果集MySql儲存過程
- MySQL儲存過程in、out、inout引數示例與總結MySql儲存過程
- mssql 儲存過程呼叫另一個儲存過程中的結果的方法分享SQL儲存過程
- ibatis呼叫oracle儲存過程(極簡版)BATOracle儲存過程
- mysql多次呼叫儲存過程的問題MySql儲存過程
- jdbc使用call呼叫儲存過程報錯JDBC儲存過程
- Springboot呼叫Oracle儲存過程的幾種方式Spring BootOracle儲存過程
- java使用mybatis 呼叫儲存過程返回一個遊標結果集JavaMyBatis儲存過程
- Oracle儲存過程乾貨(一):儲存過程基礎Oracle儲存過程
- 詳解MySQL儲存過程引數有三種型別(in、out、inout)MySql儲存過程型別
- 儲存過程與儲存函式儲存過程儲存函式
- SQLSERVER儲存過程SQLServer儲存過程
- mysql 儲存過程MySql儲存過程
- unidac儲存過程儲存過程
- firedac儲存過程儲存過程
- Oracle儲存過程Oracle儲存過程
- 通過EFCore呼叫GBase8s資料庫儲存過程資料庫儲存過程
- 使用JAVA呼叫配方單儲存介面更新資料失敗, 使用了SaveParam引數Java
- JdbcTemplate調儲存過程JDBC儲存過程
- 儲存過程——遊標儲存過程
- 儲存過程 傳 datatable儲存過程
- MySQL之儲存過程MySql儲存過程
- oracle的儲存過程Oracle儲存過程
- MySQL---------儲存過程MySql儲存過程
- mysql儲存過程整理MySql儲存過程
- Oracle儲存過程-1Oracle儲存過程