mssql存储过程

来源:百度知道 编辑:UC知道 时间:2024/05/25 10:07:34
小弟请教两个问题:
1、请写一个标准的mssql存储过程,需求是
注册用的存储过程,传参用户id
if判断数据表是否存在该id,有则返回,无则插入
插入成功后返回插入的id号。

2、请说一下jsp下PreparedStatement 如何调用存储过程,以及存储过程返回的结果集如何获取。。十分感谢

解决了再加分....

我想你这个需求可能有点问题。
用jdbc调用mysql的存储过程大概例子如下:
例如现有存储过程

login(IN VARCHAR(20),OUT VARCHAR(5))

Connection con = null;
CallableStatement proc = null;
//CallableStatement 是PreparedStatement 的子类,用户执行存储过程

String userId="u001";
String result=null;

try {

con = connectionPool.getConnection();
//得到connection

proc = con.prepareCall("{ call login(?,?) }");
//调用存储过程

proc.setString(1,userId);
cstmt.registerOutParameter(2, java.sql.Types.VARCHAR);
//registerOutParameter 使用的是 JDBC 类型(因此它与数据库返回的 JDBC 类型匹配),而 getXXX 将之转换为 Java 类型。

proc.execute();
result = cstmt.getString(2);
}

使用参数方式调用存储过程就行了

<%
var Command1 = Server.CreateObject("ADODB.Command");
Command1.ActiveConnection = GetConn(); '数据库连接
Command1.CommandText = "dbo.