<%-- 作者:何志強[hhzqq@21cn.com] 日期:2000-08-04 2000-08-16 版本:1.1 功能:JSP數據庫操作例程 - 存儲過程 - JDBC-ODBC - SQL Server
SQL Server的存儲過程如下: create procedure sp_jsptest @yournamevarchar(50), @myname varchar(50) output as select "您好,"+@yourname+",非常高興認識您,^_^" set @myname = "何志強" return 1 go --%>
<%@ page contentType="text/html;charset=gb2312"%>
<% //變量聲明 java.lang.String strName; //姓名
//取得用戶輸入的數據 strName = request.getParameter("name"); if(strName==null){//用戶沒有輸入姓名 %>
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>JSP數據庫操作例程 - 存儲過程 - JDBC-ODBC - SQL Server</title> </head> <body>
<form action="jdbc-odbc.jsp" method="post"> 您尊姓大名:<input type="text" name="name" maxlength="50"> <input type="submit" value="提交"> </form>
</body> </html>
<% } else{ //對用戶輸入的數據作必要的字符編碼轉換 strName = new java.lang.String(strName.getBytes("iso-8859-1"));
//變量聲明 java.sql.Connection sqlCon; //數據庫連接對象 java.sql.CallableStatement sqlStmt; //可調用語句對象 java.sql.ResultSet sqlRst;//結果集對象
java.lang.String strCon;//數據庫連接字符串 java.lang.String strSQL;//SQL語句
java.lang.String strWelcome;//歡迎詞 java.lang.String strMyName; //我的姓名 int intReturn;//返回值
//裝載JDBC-ODBC驅動程序 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//設置數據庫連接字符串 strCon = "jdbc:odbc:jspdemo";
//連接數據庫 sqlCon = java.sql.DriverManager.getConnection(strCon,"sa","");
//準備SQL語句 strSQL = "{? = call sp_jsptest(?,?)}";
//準備可調用語句對象 sqlStmt = sqlCon.prepareCall(strSQL);
//設置輸入參數 sqlStmt.setString(2,strName);
//登記輸出參數 sqlStmt.registerOutParameter(1,java.sql.Types.INTEGER); sqlStmt.registerOutParameter(3,java.sql.Types.VARCHAR);
//執行該存儲過程并返回結果集 sqlRst = sqlStmt.executeQuery();
//獲取來自結果集中的數據 sqlRst.next(); strWelcome = sqlRst.getString(1);
//獲取輸出參數的值 strMyName = sqlStmt.getString(3);
//獲取返回值 intReturn = sqlStmt.getInt(1);
//關閉記錄集 sqlRst.close();
//關閉可調用語句對象 sqlStmt.close();
//關閉數據庫對象 sqlCon.close(); %>
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>JSP數據庫操作例程 - 存儲過程 - JDBC-ODBC - SQL Server</title> </head> <body>
<%=strWelcome%><br> 我是<%=strMyName%><br> 返回值是<%=intReturn%>
</body> </html>
<% } %>
|