2013-07-11 2 views
0

Я следующий SQL запрос, который я хочу использовать с PostgresНужна помощь, чтобы просмотреть PostgreSQL запрос

declare 
    _sql varchar varying(50); 
    _whereClause varchar varying(50); 
_whereClause:='and 1=1' 

execute 'SELECT count(*) FROM test t WHERE 1=1' || _whereClause 

, когда я пытаюсь выполнить запрос выше он дает ошибку в VARCHAR во второй строке. и даже некоторое время для простой команды, как показано ниже

declare _sql varchar varying(50); 

Это дает ошибку, но я не знаю, что случилось с кодом. Я даже попытался понять это с помощью Оффициального сайта Postgres SQL, и когда я попытался скопировать и запустить пример, данный там, он не выполняется.

Я новичок в Postgres, и мне не повезло с синтаксисом SQL Postgres.

ответ

1

Синтаксис неправильный, вы должны использовать либо VARCHAR(50), либо CHARACTER VARYING(50), а не VARCHAR VARYING(50). Например.

DECLARE 
    _sql VARCHAR(50); 
    _whereClause VARCHAR(50); 
Смежные вопросы