【发布时间】:2013-09-22 02:19:13
【问题描述】:
我正在尝试移植一个我在 Java 代码中使用的概念,该概念用于 SQL 存储过程,但我不确定它是否可能。
基本上,如果我有一个包含 10 列的表,我希望能够每次都从同一个存储过程更新不同的列组合。 IE。在 Java 中,我会传递一个包含我想要更新的值的映射,并遍历它们并更新缓存中的每个键值。
这样做的好处是不必更改方法签名以包含每个列名,也不必让大量代码对每个变量进行空值检查以确定是否应该更新它。我不确定这是否可行,或者某些数据库服务器是否具备这种能力(即 PostgreSQL、Oracle、MySQL),或者它们都具备这种能力,但我就是不知道语法。
【问题讨论】:
-
您能否发布一个 Java 代码示例,以便更清楚您想要实现的目标。
-
这可以在您提到的任何 DBMS 中使用动态 SQL 来完成。
标签: mysql sql sql-server postgresql stored-procedures