什么是DB2查询中params的语法

时间:2011-10-17 15:54:04

标签: sql db2 params

在MS-SQL中我可以做这样的事情

@myVar AS int;
@myVar = 12;

SELECT * FROM table WHERE field = @myVar;

这完全在DB2中爆炸 - 而且我不确定它是否特定于RDBMS,或者是否因为我已经搞砸了语法......

感谢任何帮助

2 个答案:

答案 0 :(得分:0)

与ms-sql相比,db2 sql中可以动态执行的操作数量有限。您尝试尝试的大多数语法保留仅用于db2中的过程。请参阅此处的文档http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0004240.html,了解您可以在db2中动态执行的操作。

如果你可以动态提供参数值,只需使用 select * from table where field = ?;当你运行它时,它会要求你提供parm的值。

答案 1 :(得分:0)

如果您使用ADO.NET数据提供程序连接到DB2 Express-C,则可以使用@为绑定的SQL参数添加前缀。

我不确定其他DB2环境,但其他数据库中使用的常用符号是::?,因此可能值得尝试其中一种。