2012-01-08 1 views
1

내 Java 응용 프로그램에서 H2 데이터베이스를 사용하고 있습니다. CSVWRITE 명령을 사용하여 DB의 데이터를 파일에 씁니다. 유일한 문제는 파일에 쓰여진 값이 큰 따옴표로 묶여 있다는 것입니다. A 레코드는 예를 들면 아래와 같습니다 H2 데이터베이스 - CSVREAD/CSVWRITE - 필드 인클로저의 옵션 이름은 무엇입니까?

"TN"|"8903555"|"2012-01-08 23:20:27.0"|"Hello"|"Postpaid"|"TN2011120810070811" 

내가 위의 라인이 하나 아래처럼 따옴표없이 내보낼 수 원하는 :

TN|8903555|2012-01-08 23:20:27.0|Hello|Postpaid|TN2011120810070811 

그래서 CSVWRITE 명령 옵션 이름 것입니다 I 이것을 위해 사용할 수 있습니다.

CALL CSVWRITE('/home/admin/Documents/abc.txt', 'SELECT * FROM TEST0 WHERE IN_DATE >= ''2012-01-08 00:00:00'' AND IN_DATE < ''2012-01-09 00:00:00''', 'charset=UTF-8 fieldSeparator=|'); 

답변

7

당신은 사용할 수 있습니다 : :이 fieldDelimiter 필요하지 않습니다

CALL CSVWRITE('/home/admin/Documents/abc.txt', 
    'SELECT * FROM TEST0 WHERE IN_DATE >= ''2012-01-08 00:00:00'' 
    AND IN_DATE < ''2012-01-09 00:00:00''', 
    'charset=UTF-8 fieldSeparator=| fieldDelimiter='); 

가 마지막에 지정 될 수있는 아래 내가 데이터를 파일로 내보내기 위해 사용하고있는 명령입니다. 공백을 필드 구분 기호로 사용하려면 백 슬래시를 사용하여 이스케이프해야합니다. '... fieldDelimiter=\ '

관련 문제