안녕하세요 제가 postgreSql 은 처음 접하는거라 계속
삽질중이네요..ㅠㅠ
질문이 몇가지가 있습니다
질문 1 ㅠㅠ) mssql 에서 사용하는
varbinary(256) 바이너리 타입이 Postgresql 에서는 bytea[256] 이
맞나요?
질문 2 ㅠㅠ)
테이블 스키마
Create table testtable2(
iIndex int,
szName nvarchar(256),
binData bytea[256]
)
프로시져
create or replace function
spInsert2(PARAMINDEX INT, PARAMNAME VARCHAR(256), PARAMBINDATA
bytea[256])
returns void as
$$
BEGIN
insert into testtable2(iIndex, szName, binData)values(PARAMINDEX,
PARAMNAME, NULL);
END; $$
language plpgsql;
프로시져를 호출안하고 그냥
insert into testtable2(
iIndex, szName, binData
)values(
1, '권용재', NULL
);
insert()구문으로 쿼리를 날리면 잘들어갑니다
근데 프로시져호출
select spInsert2(1, '권용재',
NULL);
이라고 하면 다음과같은 에러가 나네요
오류 : 함수 spInsert2(integer, "unknown", "unknown") 는 유일성을
가지짖 못합니다(not unique)
힌트 : 적합한 후보함수를 선택할수 없습니다. 직접 명시적으로 현변환
(type cast) 을 추가해 주어야합니다.
질문 3 ㅠㅠ)
만일 insert() 문을 날릴때
insert into testtable2(iIndex, szName, binData)values(1, '권용재',
NULL);
이렇게 한줄로쓰면 문제가 없는데
insert into testtable2(
iIndex, szName, binData
)values(
1, '권용재', NULL
);
엔터가 들어가면 "(" 때문에 문제가 생기네요
질문이 애매하죠..
다시말하면
MySql 의 delimiter // (';' 대신에 임시로 '//' 를 실행으로) 같은
명령어는 없나요
좋은 답변 부탁드리겠습니다
|