- ベストアンサー
CSVにエクスポート
サーバのSqlServerのデータをCSVにエクスポートしたいのですが、うまくいきません。 管理者権限だと動きますが、一般ユーザーでEXEC xp_cmdshell"bcp・・・"だとセキュリティでひっかかり動作しません、セキュリティの設定に関する資料も少なく、どなたかご教授願えませんか。 またほかの方法でもいいんです、クライアントはC#とVBのみです。sqlcmdやbcpなどは一切ありません。ですので、すべてをできればサーバ側で行いたいのです。お願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
単純に権限付与するならsysadminで、 GRANT exec ON xp_cmdshell TO <SQLLogin> ですが、この辺はある種のFAQで、もう一手間、二手間必要かもしれません。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=42662&forum=7 http://ameblo.jp/sql-server/entry-10292432498.html http://bokuibi.blogspot.jp/2009/06/sql-server.html?m=1 http://support.microsoft.com/kb/890775/ja バージョンや認証方法でも対処法が変わります。 とは言え、(私は、仕事で使っていたのは2000が最後ですが)基本理念は変わっていないと思います。 ところで、bcpでサーバにファイルを吐いた後、クライアント側に持って来る処理は不要なのでしょうか? ファイルサイズにもよるとは思いますが、C#とVBが使えるなら、それこそ、OLEDB、ODBC経由でCSV吐くサンプルは沢山転がっていると思います。 数100MB以上とかなら、サーバ側で吐いたのを圧縮転送の方がいいですけど。
お礼
ありがとうございます。関数に実行権限を与えたらいけました。 参考になりました。