출발 : | "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
실비오
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 : 어레이 및 널 |