postgresql을 사용하여 함수를 만들었습니다. 하지만이 함수는 오류를 반환하려고합니다. 오류 "ERROR: syntax error at or near "||"
postgresql의 concat
CREATE OR REPLACE FUNCTION search_address_book(address_ids character)
RETURNS void AS
$BODY$
SET sqlStatement = 'select * from addressbook';
SET address_ids = 'Post' || 'greSQL';
$BODY$
LANGUAGE 'sql' STABLE
COST 100;
내 서버 버전은 8.3.14입니다. 잘못인가? 어떻게 내가 postgresql에서 두 문자열 concat합니까? 인용 언어 이름 ''sql'` 또는` '를 사용하는 것은 지원되지 않는 plpgsql'`is 9.1 이상으로 이동할 때 더 이상 작동하지 않습니다
CREATE OR REPLACE FUNCTION search_address_book(address_ids character)
RETURNS void AS
$BODY$
declare
sqlStatement text;
address_ids text;
begin
sqlStatement := 'select * from addressbook';
address_ids := 'Post' || 'greSQL';
end
$BODY$
LANGUAGE plpgsql STABLE;
참고 : –
@a_horse_with_no_name : 좋은 조언. 그러나 정확하게 말하면, 나는 매뉴얼을 인용했다. (http://www.postgresql.org/docs/current/interactive/sql-createfunction.html) :'이전 버전과의 호환성을 위해 이름은 작은 따옴표로 묶을 수있다 .' –
@ErwinBrandstetter : ** 다음 버전으로 이동 **합니다 ** : http://postgresql.1045698.n5.nabble.com/language-name-case-sensitivity-also-known-as-plpgsql-PLpgSQL -tp5595577.html –