【发布时间】:2013-02-07 18:13:59
【问题描述】:
我有一个mysql存储过程。
DELIMITER //
CREATE PROCEDURE GetRecordsByAge(IN Age INT)
BEGIN
SELECT * FROM test1 WHERE age = Age;
END //
DELIMITER ;
当我通过 java 运行这个存储过程时,它会给出表的所有记录。
但是如果我在 select 语句中有条件。为什么会这样?
这是我的代码行:-
CallableStatement cStmt = null;
cStmt = con.prepareCall("{ CALL GetSpecificRecord(?) }");
cStmt.setInt(1, 25);
cStmt.execute();
ResultSet rs1 = cStmt.getResultSet();
当我打印这个结果集时,这将给出表的所有记录。
问题出在哪里?
谢谢
【问题讨论】:
-
您正在调用 GetSpecificRecord,但您的 proc 是 GetRecordsByAge
-
您是否尝试过在 mysql 本身中测试 sp。您是否得到了想要的结果?伊斯万托发现了它!
标签: java mysql sql stored-procedures