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

テキスト付きのSQLスクリプトを使用してテキストファイルを作成する方法|

    パイプ文字はバッチコマンドで特別な意味を持つため、エスケープ キャレット文字を使用します。これは機能するはずです:

    DECLARE @Text AS VARCHAR(100)
    DECLARE @Cmd AS VARCHAR(100)
    SET @Text = 'Hello world^| '
    SET @Cmd ='echo ' +  @Text + ' > C:\AppTextFile.txt'
    EXECUTE Master.dbo.xp_CmdShell  @Cmd
    

    これは実際にはテキストファイルにデータを書き込むための良い方法ではありませんが、通常、SQL ServerにはC:ドライブのルートおよびxp_cmdshellに書き込む権限がないはずです。 デフォルトでは無効になっています。 sqlcmd.exeのような代替案を検討することをお勧めします 、bcp.exe または、好みの言語(PowerShell、Perl、Pythonなど)の小さなスクリプト。

    一般に、SQL Serverからデータをクエリする方が、サーバー側からデータをプッシュするよりもはるかに簡単で、安全で、柔軟性があります。特定のケースでは、区切られたファイルを書き出すように見えます。 bcp.exe その目的のために意図されています



    1. SQLで特定のユーザーの各会話で最新のメッセージを取得するにはどうすればよいですか?

    2. postgresql内で分散トランザクションを処理する方法は?

    3. デフォルトの方法で自動データベースのバックアップと復元を実装する

    4. 現在のコマンドで重大なエラーが発生しました。結果がある場合は、破棄する必要があります。 SQL Azureエラーはどういう意味ですか?