この投稿はQWERTYUによって2019年11月7日08:46に最終編集されました。
質問1: 今日、データベースにインポートするためのほぼ100万件のデータが入ったExcelを手に入れました。最初はローカルで自分のExcelを使い(2014年)、その後サーバー上で実行するためのスクリプトファイルを生成しました(2008年)。 ファイルSQLは開けません。 回避策: 組み込みのsqlcmdツールを活用してください ステップ1:Win+Rタイプ:コマンドラインツールを開くコマンド; ステップ2:タイプ:cd C:\Program Files\Microsoft SQL Server\100\Tools\Binn(インストールしたSQLの場所に関連する特定のディレクトリパス) ステップ3:タイプ:sqlcmd -s . -U sa -P 123 -d テスト -i data.sql パラメータの説明:-s サーバーアドレス -u ユーザー名 -P パスワード -d データベース名 -i スクリプトファイルパス
質問2: 今日、データベースのバックアップファイルが手に入り、サーバーに復元しました。Excelにエクスポートするための100万のデータ、タスクのセット =>データエクスポート => SQL->Excel 2007はエクスポートするのに非常に優れています。チェックはExcelの制限です。 それでもローカルで試せない場合は、65,536件のデータを含む複数のサブテーブルをページング付きでエクスポートするストアドプロシージャを書いてください。 あまりにもイライラして書きたくありません。 BCPを使ってください。
回避策: ステップ1:以下の文を実行してセキュリティ設定を設定する EXEC sp_configure「詳細オプションを表示」、1 再構成 執行sp_configure『xp_cmdshell』、1 再構成 どの設定もエラーを出しません。「SQL Serverはコンポーネント『xp_cmdshell』のプロセス『sys.xp_cmdshell』へのアクセスをブロックしました。なぜなら、このコンポーネントはこのサーバーのセキュリティ設定の一環としてシャットダウンされたからです。 システム管理者はsp_configureを使って「xp_cmdshell」を有効にすることができます。 xp_cmdshellの有効化についての詳細は、SQL Server Online BooksシリーズのPeripheral App Configuratorを参照してください。 ” ステップ2:エグゼクティブマスター: xp_cmdshell 'bcp "use -B select * from -T queryout -E -c -S -U -P パラメータの説明:-Bデータベース名 -Tテーブル名 -E Excel パス -Sサーバーアドレス -Uユーザー名 -Pパスワード 例:EXEC マスター: xp_cmdshell 'bcp "use LJ_PD_IPR_INTERFACE select * from PatentInformation" queryout D:\11.xls -c -S"." -U"sa" -P"123456"'
質問3: エクスポートされたデータに「[」や"]」といった特殊文字が含まれ、bcpで表記すると最終的なExcelスタイルが乱れてしまいます。 別のツールを見つけました:SQL Prompt
ダウンロードアドレス:ハイパーリンクのログインが見えます。
使用方法は非常にシンプルで、速度も非常に速いです。まず必要なデータをクエリし、左上の「Excelで開く」を右クリックします
|