stdin젠 토토 복사하여 pl/pgsql 함수 내부 또는 pgadmin 내부젠 토토 실패하지만 psql젠 토토 확인

출발 : "Silvio Macedo"
to :
제목 : stdin젠 토토 복사하여 pl/pgsql 함수 내부 또는 pgadmin 내부젠 토토 실패하지만 psql젠 토토 확인
날짜 : 2005-08-29 18:43:05
메시지 -ID : PostgreSQL : stdin의 복사는 pl/pgsql 함수 내부 또는
보기 : 원시 메시지 | 전체 스레드 | mbox 다운로드 | 이메일 재판용
스레드 :
목록 : pgsql-interfaces


안녕,

(Pg 8.0.3 Windows XP SP2, 클라이언트 PSQL, ODBC 및 PGADMIN)

요약 : STDIN의 복사는 PSQL젠 토토 작동하지만 PL/PGSQL 내부에는 그렇지 않습니다
ODBC 명령이 아닌 함수 또는 PGADMIN SQL 창 ...

이것이 왜 작동하지 않는지 설명 할 수 있다면 감사하겠습니다 :

- 테이블 작성
테이블 생성 temp_data (
xx float,
yy float,
ww float,
hh float) oids없이;

- 기능 만들기
함수 생성 또는 교체 check_data (텍스트) 정수를 $ func $로 반환합니다.
시작

Delimiter와 Stdin젠 토토 'temp_data (xx, yy, ww, hh)를 실행합니다'| ''; '
|| '\ n'|| $ 1 ||

- 무언가를 꺼내려면
반환 길이 ($ 1);
끝;
$ func $ language plpgsql;

그리고 다음 :

Check_Data를 선택하십시오 ( '1.0 | 2.0 | 3.0 | 4.0');

그것은 다음과 같이 제공합니다 :
오류 : 문자 60젠 토토 "1.0"또는 근처의 구문 오류
쿼리 : stdin젠 토토 delimiter '|';젠 토토 temp_data (xx, yy, ww, hh)를 복사합니다.
1.0|2.0|3.0|4.0
\.
컨텍스트 : pl/pgsql 함수 "check_data"line 8 at execute statement

실제로, PGADMIN SQL 명령 프롬프트 내젠 토토 사본을 수행하면
실패합니다. 예를 들어, PLPGSQL-없이 다음과 혼자

delimiter '|';와 함께 stdin젠 토토 temp_data (xx, yy, ww, hh)를 복사합니다.
1.0|2.0|3.0|4.0
\.
실패합니다.

반면에 PSQL 프롬프트 젠 토토이 줄을 실행하면 작동합니다
그냥 괜찮아.

모든 도움이 감사하겠습니다.

GODS
실비오

응답

날짜 별 PGSQL 인터페이스 찾아보기

From 날짜 주제
다음 메시지 Chris Browne 2005-08-29 22:16:26 Re : stdin의 복사는 pl/pgsql 함수 내부 또는 pgadmin 내부젠 토토 실패하지만 psql젠 토토는 OK
이전 메시지 Kuba Ouhrabka 2005-08-29 08:45:16 Re : ECPG : 어레이 및 널