2

ms sql server 2008 にあるテーブルをシステムのテキスト ファイルにエクスポートしようとしています。SQL Serverクエリウィンドウに次のコマンドを書いています

SELECT *
FROM [AdventureWorks].[Person].[AddressType] 
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';

このコマンドを書くたびに、SQLヘルプでエラーが表示されますincorrect syntax near 'INTO'

次に、次のようにキーワードとの間を交換してみました

SELECT *
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
FROM [AdventureWorks].[Person].[AddressType] ;

今、それは私にエラーを与えますincorrect syntax near 'C:/filename.csv'

これに関して私を助けてください。これらのエラーを削除して、SQL を動作させることができません

4

2 に答える 2

6

問題を解決する方法はたくさんあります。この場合、ここに 2 つの解決策があります。

解決策 1

  • データベース名を右クリック -> タスク -> データのエクスポート
  • テーブルをデータ ソースとして選択します
  • 宛先としてフラット ファイルの宛先を選択する
  • ファイル名を選択してください (任意のファイル名)
  • 「最初のデータ行の列名」をマークします (これはオプションです)。

以上です。

解決策 2

DECLARE  
 @saveas VARCHAR(2048)
,@query VARCHAR(2048)
,@bcpquery VARCHAR(2048)
,@bcpconn VARCHAR(64)
,@bcpdelim VARCHAR(2)

 SET @query      = 'select * from table1'
 SET @saveas     = '\\SERVER1\SHARE1\FOLDER\QueryOutput.txt'
 SET @bcpdelim   = '|'
 SET @bcpconn    = '-T' -- Trusted
 --SET @bcpconn    = '-U <username> -P <password>' -- SQL authentication


 SET @bcpquery = 'bcp "' + replace(@query, char(10), '') + '" QUERYOUT "' + @saveas + '" -c -t^' + @bcpdelim + ' ' + @bcpconn + ' -S ' + @@servername
EXEC master..xp_cmdshell @bcpquery  
于 2013-07-22T07:24:53.353 に答える