转贴:
SQL Server的存储过程如下:
create procedure sp_jsptest
@yourname varchar(50),
@myname varchar(50) output
as
select "您好,"+@yourname+",非常高兴认识您,^_^"
set @myname = "何志强"
go
--%> <%@ page contentType="text/html;charset=gb2312"%> <%
//变量声明
java.lang.String strName; //姓名 //取得用户输入的数据并作必要的字符编码转换
strName = new java.lang.String(request.getParameter("name").getBytes("iso-8859-1"));
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{
//变量声明
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; //我的姓名 //装载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(1,strName); //登记输出参数
sqlStmt.registerOutParameter(2,java.sql.Types.VARCHAR); //执行该存储过程并返回结果集
sqlRst = sqlStmt.executeQuery(); //获取来自结果集中的数据
sqlRst.next();
strWelcome = sqlRst.getString(1); //获取输出参数的值
strMyName = sqlStmt.getString(2); //关闭记录集
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%> </body>
</html> <%
}
%>
SQL Server的存储过程如下:
create procedure sp_jsptest
@yourname varchar(50),
@myname varchar(50) output
as
select "您好,"+@yourname+",非常高兴认识您,^_^"
set @myname = "何志强"
go
--%> <%@ page contentType="text/html;charset=gb2312"%> <%
//变量声明
java.lang.String strName; //姓名 //取得用户输入的数据并作必要的字符编码转换
strName = new java.lang.String(request.getParameter("name").getBytes("iso-8859-1"));
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{
//变量声明
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; //我的姓名 //装载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(1,strName); //登记输出参数
sqlStmt.registerOutParameter(2,java.sql.Types.VARCHAR); //执行该存储过程并返回结果集
sqlRst = sqlStmt.executeQuery(); //获取来自结果集中的数据
sqlRst.next();
strWelcome = sqlRst.getString(1); //获取输出参数的值
strMyName = sqlStmt.getString(2); //关闭记录集
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%> </body>
</html> <%
}
%>
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货