SQL Azure上にデータベースを作成する
それでは、SQL Azure上にサンプルで使用するデータベースを作成してみましょう。
サーバーの作成後、図6のようにMy Projectsページが表示されています。
プロジェクト名が「SDS-only CTP Project」の行をクリックします。図7のようにServer Administrationページが表示されます。表示されている「Databases」タブを見ると、デフォルトでmasterデータベースが作成されていることが分かります。
[Create Database]ボタンをクリックします。ダイアログが表示されますので、データベース名の部分は「Shop」と入力し、データベースの最大サイズは1GBを選択し[Create]ボタンをクリックします。これでSQL Azure上に、データベースが作成されました。
次に、ファイアウォールの設定を行います。SQL Azureへのアクセスを許可するIPアドレスの範囲を設定します。デフォルトでは、すべてのアクセスを拒否する設定になっていますので、アクセスを許可するIPアドレスの範囲を手動で設定する必要があります。
表示されているServer Administrationページの「Firewall Settings」タブをクリックします。
[Add Record]ボタンをクリックします。ダイアログが表示されますので、「Name:」に任意の名前を入力し、「IP Range:」の部分にはアクセスするコンピュータのIPアドレスを含む有効な範囲を指定します(参考情報として、ダイアログには自分の現在のIPアドレスが表示されています)。そして、[Submit]ボタンをクリックします。これで、データベースにアクセスすることができるようになりました。
sqlcmdを使用して、テーブルを作成する
続いて、作成したShopデータベース上にProductsテーブルを作成します。
次のリスト3のように、コマンドプロンプトからsqlcmdユーティリティを起動します。
C:\>sqlcmd -U <Administrator Username>@<Server Name> -P <パスワード> -S <Server Name>.database.windows.net -d <データベース名(ここではShop)>
<Administrator Username>や<Server Name>の部分には、先程の図7や図8のServer AdministrationページにあるServer Informationの情報を入力します。正しく入力されていれば、SQL Azureへの接続が成功し、sqlcmdが起動します。
sqlcmdが起動したら、次のリスト4のようにCREATE TABLEステートメントを入力して、Productsテーブルを作成します。
1> CREATE TABLE Products( 2> ID int PRIMARY KEY IDENTITY(1,1) NOT NULL, 3> Name nvarchar(50) NOT NULL, 4> Description nvarchar(max) NOT NULL, 5> Price int NOT NULL) 6> GO 7> QUIT
なお、前節で説明したデータベース作成についても、同様にCREATE DATABASEステートメントを使用してsqlcmdにより作成することができます。その場合には、sqlcmdコマンドを実行する際の-dオプションに、masterを指定する必要があります。
sqlcmdを使用したSQL Azureへの接続方法の詳細については、MSDNライブラリにある次のWebページを参照してください。