Hatena::Groupmediaforcelabs

御手洗の開発記録

 | 

2010-05-19

SQL Server 2008についてのメモ - インポート、エクスポートについて

| 15:31

今日は、SQL Server 2008についてのメモ。

SQL ServerSQLを実行する方法

まずは、DOSプロンプトで以下のコマンドを実行します。

sqlcmd -S \SQLEXPRESS -d DataBaseName

「\SQLEXPRESS」はインスタンス名で、「DataBaseName」はデータベース名です。

上記のコマンドではlocalhostになっているので、別のサーバに接続するときはホスト名とポートを指定します。

ちなみに、ユーザは統合認証を利用しているので必要ありません。(Windowsのユーザ情報を利用して認証を実施している)

接続に成功したら、SQL文を記述して、goします。

1> select * from project
2> go

てか、goってw

このコマンドってSQLを実行するツールというより、ストアドプロシージャーを実行するツールなんですかね。

まあ、SQL文が実行できればなんでもいいんです。

SQL Serverでのインポートエクスポート

bcpコマンドを利用するそうです。

データをエクスポートするには以下のコマンドを実行します。

bcp "select * from DataBaseName.SchemaName.TableName" queryout Data.dat -T -c -S localhost\SQLEXPRESS

上記コマンドを実行するとData.dat(ファイル名は任意)が作成され、select文の実行結果が書き込まれます。

データのインポート以下の通りです。

bcp DataBaseName.SchemaName.TableName in Data.dat -T -f TableName.xml -S localhost\SQLEXPRESS

エクスポート時に作成したファイルを利用してインポートを実施します。

ちなみに、このインポートではフォーマットファイルを使用いています。

フォーマットファイルを利用するとデータと列のマッピングを行えるので便利です。

フォーマットファイルを作成するコマンドを以下の通りです。

bcp DataBaseName.SchemaName.TableName format nul -T -c -x -f TableName.xml -S localhost\SQLEXPRESS

上記コマンドを実行するとTableName.xml(ファイル名は任意)が作成され、XML形式でテーブル定義が出力されます。

ちなみに、XML以外でも出力できるみたいですがSQL Server独自の形式でDDLではありません。

DDLを作るにはSQL Server Management Studioが必要みたいです。

開発時には単体用、結合用など複数のデーターベースが必要なので、DDLは必須です。

今回はSQL Server Management Studioより、S2JDBC-GENを使ってみました。

理由としては、使い慣れているということと、バージョン管理なども考えられているし、なにより簡単!

ということで、S2JDBC-GENを利用したSQL Serverマイグレーションについては次回にします。

IvanIvan 2012/02/18 18:58 I guess finding useful, reliable information on the itnerent isn't hopeless after all.

rpbzxpkrpbzxpk 2012/02/19 19:42 S3NbHa <a href="http://ivsiqwkzwwjs.com/">ivsiqwkzwwjs</a>

hazcekphazcekp 2012/02/20 01:58 U6PFjv , [url=http://psyklsxgvsph.com/]psyklsxgvsph[/url], [link=http://xrxztlryelad.com/]xrxztlryelad[/link], http://wornnbmmythm.com/

ゲスト



トラックバック - http://mediaforcelabs.g.hatena.ne.jp/mitarai2009/20100519
 |