sql >> データベース >  >> RDS >> Oracle

OracleSQLDeveloperのスプールを使用してselectステートメントの結果をCsvファイルに適切にエクスポートする方法

    from がないため、選択が不完全です 条項ですが、コピーアンドペーストでそれを失ったかどうかはわかりません。部分的なステートメントは実行されないため、実行するものはありません(; を終了しません)。 または/ 次の行に)。 農家からのを持っていた場合 句を指定すると、コマンドとORA-00923エラーが表示される可能性があります。

    フィールド間に引用符で囲まれたコンマを入れるだけではなく、 ||を使用してフィールドをその文字で連結する必要があります。 連結記号:

    spool 'c:\farmerList.csv'
    
    select FIRSTNAME
        ||','|| LASTNAME
        ||','|| TRN
        ||','|| CELL
        ||','|| PARISH
    from farmers;
    

    を含むファイルを提供します
    Joe,Grundy,X,Y,Ambridge
    

    フィールドは別々の行にある必要はありません。カンマを読みやすく、追跡しやすいと思います。

    /は必要ありません スプールコマンドの後-spoolの前の最後のステートメントを再実行します 、ある場合-スペースが含まれていない限り、スプールファイル名を引用符で囲む必要はありませんが、問題はありません。

    set colsep> 列区切り文字をコンマにするために使用できるコマンドですが、パディングについて心配する必要があるため、(ほぼ)実行しているときに列を連結する方が簡単です。

    タイトルにSQLDeveloperのリファレンスがあることに気づかなかったので、それがSQL*Plusの場合を除いて。スプールは、すべての set ではなく、おそらく不要なものをトラップしてエコーするように見えるため、Developerでは少し奇妙です。 コマンドは機能します(バージョンによって異なります)。

    より安全で好ましい方法は、コンマを連結せずに通常のクエリを実行することだと思います。

    select FIRSTNAME, LASTNAME, TRN, CELL, PARISH
    from farmers;
    

    また、「スクリプトの実行」ではなく「実行」を使用して、結果がクエリ結果ウィンドウのグリッドビューに表示されるようにします。グリッドを右クリックして、「エクスポート」を選択します。その後、CSVまたはXLSとして保存し、必要に応じてヘッダー行を持たないように選択できます。



    1. PostgreSQLで符号なし整数が使用できないのはなぜですか?

    2. 画像をデータベース(mySQL)に保存する場合と保存しない場合(画像をデータベース内のアイテムにリンクする)

    3. ajaxまたはjqueryを使用して、phpクエリファイルをhtmlインデックスページにロードします

    4. WHM / cPanelサーバーでのProxySQLを使用したMySQLレプリケーション:パート1