タグ: SSMS

  • SSMSでテーブルのデータからINSERT文を生成する

    SSMS(SQL Server Management Studio)のバージョンは、18.5で確認。

    1. SSMSを開き、SQL Serverに接続する。
    2. INSERT文を作成するDBを選ぶ。
    3. 右クリックから「タスク」「スクリプトの生成」を選ぶ。
    4. ウィザードが立ち上がる。
    5. 「次へ」をクリックする
    6. INSERTを作成したいテーブルを選び、「次へ」をクリックする。
    7. スクリプト作成オプションの設定画面になるので、「詳細設定」をクリックする。(ここがポイント)
    8. 「スクリプトを作成するデータの種類」でプルダウンから「データのみ」を選択する(ここがポイント)
    9. 「OK」をクリックする
    10. 保存方法を選択して、「次へ」
    11. 内容を確認して、「次へ」
    12. 結果が成功になっていれば、「完了」をクリックして終わり。
    13. 保存先を確認する。

    この手順でわかりにくいのが、「詳細設定」から「スクリプトを作成するデータの種類」を探して「データのみ」を選択するところ。ここを変更しないと、スキーマの情報しかスクリプトとして作成してくれない。

  • SQL Server Management Studio v18.2の制限を解除する

    SQL Serverの管理やDBの設定のために、マイクロソフトのサイトからSQL Server Management Studio(v18.2)をダウンロードしてきたが、マウス操作だけでDBのテーブル内容を表示しようとすると、制限がかかっている。表示なら上位1000行、編集なら上位200行で制限がついている。SQLを実行すれば、表示もできるし、編集もできるが少々めんどくさい。これの制限を解除する方法。

    設定方法

    1. SQL Server Management Studioを開く。
    2. メニューから、「ツール」、「オプション」の順に選択する。
    3. 「SQL Serverオブジェクトエクスプローラー」を選択する。
    4. 「上位<n>行の選択コマンドの値」を0にする。(もしくは、必要な行数に変える)
    5. 「上位<n>行の編集コマンドの値」を0にする。(もしくは、必要な行数に変える)
    6. 「上位<n>個の監査レコードの選択コマンドの値」を0にする。(もしくは、必要な行数に変える)
    7. 「OK」をクリックして、オプションを閉じる。
    8. テーブルを選択して、右クリックし、表示されるメニューが「すべての行の選択」に変わていることを確認する。

  • SQL Server 2017 Expressに外部のSQL Server Management Studioから接続できない

    SQL Server 2017 Expressをインストールしたが、外部のSQL Server Management Studioから接続できない。ローカルのSQL Server Management Studioからは接続できる。試したことは、

    • TCP/IPの設定もチェック済み
    • Windows Defender ファイアウォールは切り分けのために、一時的に無効した。
    • それでも、接続できない。

    設定を見直して、Windowsのサービスも見直したところ、SQL Server Browerのサービスが無効になっていた。SQL Server Browerのサービスを開始することで、外部からの接続ができるようになった。ただ、初期設定が無効になっていたため、設定変更をしないと、サービスを開始できなかった。

    1. Windowsのサービスを開く。
    2. SQL Server Browerを選択して、プロパティを開く。
    3. スタートアップの種類を自動に変更して適用をクリックする。
    4. サービスを開始する。

    SQL Server Browerのサービスは、SQL Server接続情報をクライアントコンピューターに指定するサービス。これが起動していないため、接続情報がわからず、SQL Server Management Studioは接続でタイムアウトしていた。