каков синтаксис для параметров в запросе DB2 - PullRequest
0 голосов
/ 17 октября 2011

в MS-SQL я могу сделать что-то вроде этого

@myVar AS int;
@myVar = 12;

SELECT * FROM table WHERE field = @myVar;

это полностью взрывается в DB2 - и я не уверен, специфична ли это для СУБД или потому что я использовал FUBAR-синтаксис ...

Любая помощь приветствуется

Ответы [ 2 ]

0 голосов
/ 17 октября 2011

Если вы используете ADO.NET Data Provider для соединения с DB2 Express-C, вы можете добавить префиксные параметры SQL к @.

Я не уверен насчет других сред DB2, но частоСимволы, используемые в других базах данных: : и ?, так что, возможно, стоит попробовать один из них.

0 голосов
/ 17 октября 2011

Есть ограниченное количество вещей, которые вы можете сделать динамически в db2 sql по сравнению с ms-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 = ?; при запуске, он попросит вас ввести значение для параметра.

...