Проблема преобразования таблицы SQL в файл CSV - PullRequest
1 голос
/ 28 октября 2010

У меня возникла проблема, которую я не могу выяснить при преобразовании поля таблицы в базе данных Oracle в файл CSV. У меня есть столбец varchar2 (4000), где пользователи вводят свои комментарии. Иногда пользователи копируют и вставляют текст из других программ, таких как MS Word, поэтому в поле вставляется много дополнительной информации, такой как возврат каретки и перевод строки. В этом поле также может быть много текста. По какой-то причине, даже несмотря на то, что я избавляюсь от возврата каретки и перевода строки, файл CSV по-прежнему показывает CR и LF, что приводит к разделению данных на две строки при открытии файла CSV в Excel. Ниже мой код только для этого столбца. Может ли кто-нибудь помочь мне понять, почему это происходит и есть ли способ решить проблему? Буду признателен за любую оказанную помощь. Спасибо.

SET RECSEP OFF 
SET TRIMOUT ON
SET TRIMSPOOL ON
SET TERMOUT OFF 
SET TERM OFF 
SET ECHO OFF 
SET VERIFY OFF 
SET HEAD OFF 
SET PAGESIZE 0 
SET LINESIZE 3000
SET COLSEP '|'  
SET FEEDBACK OFF
SET WRAP ON

spool 'C:\Temp\data.csv'

SELECT REPLACE (REPLACE (TRIM(COMMENTS), chr(13),''), chr(10), '') 
  FROM T_COMMENT;

SPOOL OFF

1 Ответ

1 голос
/ 29 октября 2010

Как правило, если CSV-файл содержит запятые или возврат каретки в данных, то поле ставится в двойные кавычки, чтобы определить, что поле занимает несколько строк.другие персонажи, но это то, как я видел это.

...