Что означает «: 1», «: 2» ​​в SQL? - PullRequest
0 голосов
/ 17 ноября 2010

Я смотрю на SQL-оператор, который выглядит следующим образом:

...
AND col2_.col_date >= :1
AND col2_.col_date <= :2
...

, и я понятия не имею, что: 1 и: 2 делает ??

Может кто-то просветить меня,

Спасибо,:)

Ответы [ 3 ]

10 голосов
/ 17 ноября 2010

Они являются заполнителями в параметризованном запросе, ожидая, пока программа придет и предоставит параметры.

2 голосов
/ 17 ноября 2010

Есть параметры, указанные при выполнении запроса - вместо того, чтобы указывать дату в тексте непосредственно в запросе, они вводятся при выполнении запроса. То, что вы видите, это первый и второй заполнители ... синтаксис варьируется между серверами и провайдерами. Например, иногда вы будете видеть их имена вместо нумерованных и т. Д.

1 голос
/ 17 ноября 2010

Это заполнители, но не в SQL, только в вашем языке программирования, который создает строку SQL.В SQL (PostgreSQL в любом случае) вы должны использовать пронумерованные заполнители $ 1, $ 2 и т. Д. Проверьте руководство PostgreSQL для ПОДГОТОВКА или руководство PHP для pg_query_params () .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...