テーブルの作成 (データベース エンジン)
SQL Server 2012 では、SQL Server Management Studio または Transact-SQL を使用してテーブルを作成して名前を付け、それを既存のデータベースに追加できます。
注 |
---|
Windows Azure SQL データベースに接続している場合、[新しいテーブル] オプションを選択すると、テーブルの作成テンプレート スクリプトが実行されます。 テーブルを作成するには、パラメーターを編集してから、このスクリプトを実行してください。 詳細については、「Windows Azure SQL データベースの概要」を参照してください。 |
このトピックの内容
作業を開始する準備:
セキュリティ
テーブルを作成する方法:
SQL Server Management Studio
Transact-SQL
作業を開始する準備
セキュリティ
権限
データベースの CREATE TABLE 権限と、テーブルを作成するスキーマの ALTER 権限が必要です。
CREATE TABLE ステートメント内の列を CLR ユーザー定義型として定義する場合は、その型の所有権か、その型に対する REFERENCES 権限が必要です。
CREATE TABLE ステートメント内の列に XML スキーマ コレクションが関連付けられている場合は、その XML スキーマ コレクションの所有権か、そのスキーマ コレクションに対する REFERENCES 権限が必要です。
[先頭に戻る]
SQL Server Management Studio の使用
テーブル デザイナーでテーブルを作成するには
オブジェクト エクスプローラーで、変更するデータベースを含むデータベース エンジンのインスタンスに接続します。
オブジェクト エクスプローラーで、[データベース] ノードを展開し、新しいテーブルを格納するデータベースを展開します。
オブジェクト エクスプローラーで、データベースの [テーブル] ノードを右クリックし、[新しいテーブル] をクリックします。
次の図に示すように、列名を入力し、データ型を選択した後、各列で null 値を許可するかどうかを選択します。
他のプロパティ (ID 列または計算列の値など) を指定するには、列をクリックし、列のプロパティ タブで適切なプロパティを選択します。 列のプロパティの詳細については、「テーブル列のプロパティ (SQL Server Management Studio)」を参照してください。
列を主キーとして指定するには、列を右クリックし、[主キーの設定] をクリックします。 詳細については、「主キーの作成」を参照してください。
外部キーのリレーションシップ、CHECK 制約、またはインデックスを作成するには、テーブル デザイナー ペイン内で右クリックし、次の図に示すように、一覧からオブジェクトを選択します。
これらのオブジェクトの詳細については、「外部キーのリレーションシップの作成」、「CHECK 制約の作成」、および「インデックス」を参照してください。
既定では、テーブルは dbo スキーマに含まれています。 テーブルに対して別のスキーマを指定するには、テーブル デザイナー ペイン内で右クリックし、次の図に示すように、[プロパティ] を選択します。 [スキーマ] ボックスの一覧で、適切なスキーマを選択します。
スキーマの詳細については、「データベース スキーマの作成」を参照してください。
[ファイル] メニューの [table name を保存] をクリックします。
[名前の選択] ダイアログ ボックスで、テーブルの名前を入力し、[OK] をクリックします。
新しいテーブルを表示するには、オブジェクト エクスプローラーで、[テーブル] ノードを展開し、F5 キーを押してオブジェクトの一覧を更新します。 新しいテーブルがテーブルの一覧に表示されます。
[先頭に戻る]
Transact-SQL の使用
クエリ エディターでテーブルを作成するには
オブジェクト エクスプローラーで、データベース エンジンのインスタンスに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、[実行] をクリックします。
CREATE TABLE dbo.PurchaseOrderDetail ( PurchaseOrderID int NOT NULL, LineNumber smallint NOT NULL, ProductID int NULL, UnitPrice money NULL, OrderQty smallint NULL, ReceivedQty float NULL, RejectedQty float NULL, DueDate datetime NULL, );
その他の例については、「CREATE TABLE (Transact-SQL)」を参照してください。
[先頭に戻る]