プロジェクト

全般

プロフィール

SQL Server Management Studio

はじめに

SQL Server Management Studio (略称 SSMS)は、SQL Serverのデータベースを管理するツールです。
データベース領域、テーブルの管理、データのインポート・エクスポート、ユーザーと権限の管理、などなどを行います。

使い方

データベースの作成

  • 左側ペインで[データベース]を選択、右クリックし、[新しいデータベース]をクリック
  • 「新しいデータベース」画面でデータベース名に作成したいデータベース名を入力
  • 同画面で、必要に応じて[初期サイズ]、[自動拡張/最大サイズ]、[パス]を変更
  • 同画面の左側ペインで[オプション]を選択、必要に応じて[照合順序]、他を変更

照合順序は、char、varcharに格納する文字コードと文字コード変換を規定します。

データのインポート

Excelからデータをインポート

  • 左側ペインで対象データベースを右クリックし、[タスク] > [データのインポート]をクリック
  • 「SQL Serverインポートおよびエクスポートウィザード」画面が開く
    • データソースの選択で、[Microsoft Excel]を選択し、ExcelファイルパスにExcelファイルのある場所を指定
    • 変換先の選択で、[SQL Server Native Client 11.0]を選択
    • [1つ以上のテーブルまたはビューからデータをコピーする]を選択
    • コピー元のテーブルおよびビューを選択で、変換元列でExcelシート名にチェック、変換先列には既にテーブルが存在すればそれを指定、テーブルがなければテーブル名を入力する(デフォルトで生成されるテーブル名はExcelシート名と同じで末尾に$が付くので削除する等)
    • [マッピングの編集]ボタンをクリックし、Excelシート側でid列を用意していれば、[ID挿入を許可する]にチェック

データの編集

SSMS画面上でデータを編集

左側ペインでテーブルを選択、右クリックで[上位200行の編集]を実行すると、右側ペインに200行までのデータレコードが表示されます。

テーブルの作成

外部キー(リレーション)

  • テーブルのデザインで、外部キーを収容する列を右クリックし、ポップアップメニューから[リレーションシップ]を選択
  • 「外部キー リレーションシップ」画面で[追加]ボタンを押す。自動で制約名 FK_テーブル名_XXX が生成
  • [テーブルと列の指定]欄をクリックすると右端に[...]ボタンが表示されるので、クリックする
  • 「テーブルと列」画面で、主キーテーブルに外部キーが参照するテーブルを選択
  • その下の空欄(2列)の左側をクリックするとドロップダウンリストとなるので、外部キーが参照するテーブルのユニーク列(通常は主キーの列)を選択
  • 右側をクリックしドロップダウンリストから外部キーを収容する列を選択

テーブルの諸情報

自動採番(IDENTITY)

現在の採番値を確認するには、クエリーで、SELECT IDENT_CURRENT('テーブル名') を実行します。
現在の採番値を変更するには、クエリーで、DBCC CHECKIDENT(テーブル名, RESEED, 値)を実行します。

トラブルシュート

テーブルの定義

列の型を変更しテーブルを保存したら「変更の保存が許可されていません。」エラー

[ツール]メニュー > [オプション] で、左側ペインで[デザイナー]選択、右側ペインのテーブルオプション項で、[テーブルの再作成を必要とする変更を保存できないようにする]のチェックを外す。

クエリの実行

しばらくするとクエリのテーブル名が赤い波線表示となり「オブジェクト名〇〇が無効です」エラー

SSMSを開いて作業を続けていると(スリープ等が途中に入った時?)、今まで実行できていたクエリの表示でテーブル名に赤い波線表示が付いて、クエリーを実行すると、「オブジェクト名 MyTable が無効です。」といったエラーになることがあります。

  • 時間経過によって、データベースへ再接続が発生した後かも

アクセスするデータベースをSSMSが失ってしまうようです。

対処としては、いったんクエリー対象のデータベースを左側ペインで選択、右クリックして新しいクエリーでクエリー画面を開き、再度クエリーを入れて実行します。

クリップボードから画像を追加 (サイズの上限: 1 GB)