1

sqsh を使用して、MsSQL から CSV ファイルにデータをエクスポートしようとしています。

SQL ステートメントがSELECT * from [dbo].[searchengines].

結果のCSVは次のようなものです。

field1,field2,field3,field4,field5 
,,"Google",, 
,,"Yahoo",, 
,,"Altavista",, 
,,"Lycos",,

これらのようなものにするために私は何ができますか:

field1,field2,field3,field4,field5 
NULL,NULL,"Google",NULL,NULL 
NULL,NULL,"Yahoo",NULL,NULL
NULL,NULL,"Altavista",NULL,NULL
NULL,NULL,"Lycos",NULL,NULL

私は基本的に、空のフィールドを NULL に変更したいと考えています。何か案が?

4

1 に答える 1

2

残念ながら、null 許容列の csv 出力の空の文字列は、sqsh でハードコーディングされています。呼び出しが行われる 144 行目の src/dsp_csv.c を参照してください。

dsp_col( output, "", 0 );

あなたはそれを置き換えることができます

dsp_fputs( "NULL", output );

そしてsqshを再構築します。次のリリースでは、より精巧なソリューションを考え出す予定です。

于 2014-07-02T15:38:04.907 に答える