【发布时间】:2017-07-06 13:41:43
【问题描述】:
我已将存储过程保存在 .sql 文件中的本地文件系统中。 前任。 StoredProcedure.sql
我正在寻找一种从 java 代码中读取和执行此存储过程文件的方法。
我们可以使用执行数据库存储过程
CallableStatement cs = conn.prepareCall("{call ProcedureName(?)}");
cs.setInt(1, 1);
cs.execute();
我正在寻找传递“new File(sqlFilePath)”而不是“call ProcedureName”的方法
StoredProcedure.sql 的示例内容
USE [DBName]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[ProcedureName]
@p1 = 1
SELECT 'Return Value' = @return_value
GO
【问题讨论】:
-
继续。是可以做到的。
-
A
java.sql.CallableStatement用于调用数据库中的存储过程。- google ;) -
是的,使用 CallableStatement 是正确的,我们可以在 DATABASE 中调用存储过程。我的存储过程位于本地系统上的 .sql 文件中。我需要一种方法来读取该 sql 文件并执行存储过程。
-
您可以使用
FileReader将纯文本读取为字符串。然后使用默认的执行方法执行这个字符串。 -
@Blacktempel 你能在stackoverflow.com/questions/28781769/… 中分享你的getProcedureStatements 方法代码吗?我正在尝试实现类似的目标。
标签: java sql sql-server stored-procedures