java - 如何在mysql工作台中调用过程

标签 java mysql database

DELIMITER //
CREATE PROCEDURE temp ( empId INT)
    BEGIN
     DECLARE var_etype VARCHAR(36);

SELECT 
    emptype = QOUTE(emptype)
FROM
    dms_document
WHERE
    id = empid;
SELECT 
    emptype,
    CASE
        WHEN emptype = 'P' THEN doctype
        ELSE 'No Documents required'
    END
FROM
    dms_report
WHERE
    pilot = 1;
End//
DELIMITER ;

我已成功创建此过程,但当我尝试调用它时,出现错误 1305:函数database.temp 不存在。我正在尝试使用以下语句进行调用:

SET @increment = '1';

select temp( @increment) 

但是我得到了错误,请告诉我哪里出错了。

最佳答案

这就是你如何调用它,使用关键字call,然后是过程的名称

 call procedureName(params);

调用创建字符串

String sqlString = "procedureName("+?+")"; //in case of Integers


String sqlString = "procedureName('"+?+"')";//in case of Integers
bring the parameter in prepared statement.

关于java - 如何在mysql工作台中调用过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31108051/

相关文章:

java - 可以在浏览器工具中查看httpservletrequest数据吗?

java - 跟踪 Java 中消失的线程

php - 无法使用android mobile访问localhost

mysql - 尝试将 Play 应用程序连接到 mysql 数据库时出现 SQL 语法错误

Mysql 多重与内连接

java - 为什么不为所有 RPC 使用一个 ServiceImpl?

PHP While 循环不返回一行数据

php 比较日期如果数据库中的日期格式是这样的 (02/02/2014)

mysql - 有没有办法知道所有的表都改变了什么

java - Android序列化-java反序列化