【SQL Server】SSMSを使用して、各種定義やレコードをエクスポートする

SQL Server Management Stuido(SSMS)を使用して、
各種定義やレコードをエクスポートできます!

ここでは例として
 ・テーブルの定義をエクスポート
します!

PR

テーブル定義をエクスポートする

手順

DBを右クリックして[タスク]→[スクリプトの生成]をクリックする

[タスク]→[スクリプトの生成]
[タスク]→[スクリプトの生成]
手順

「次へ」をクリックする

手順
手順
手順

「特定のデータベースオブジェクトを選択」にチェックを入れ、
エクスポートしたいテーブルにチェック入れ、「次へ」をクリックする

ここではテーブル「EMPLOYEE」をエクスポートします。

手順
手順

ここで「テーブル」ではなく「ストアドプロシージャ」にチェックを入れれば、ストアドプロシージャの定義をエクスポートできます。

見出し

「スクリプトファイルとして保存」にチェックを入れ任意のファイル名を指定して、
「次へ」をクリックする

ここではファイル「ssms_export_sample.sql」へエクスポートします。

手順
手順

ここで「詳細設定」をクリックし、「スクリプトを作成するデータの種類」を「スキーマのみ」から「データのみ」にすれば、定義ではなくレコードをエクスポートできます。

手順
手順
手順

「次へ」をクリックする

手順
手順

以下の画面が表示されたらエクスポートは完了です!
「完了」をクリックして画面を閉じてください!

手順
手順
PR

エクスポートされたことを確認する

エクスポートされたファイルをテキストエディタで開くと、テーブル定義がエクスポートされていることが分かります。

USE [sampleDB]
GO
/****** Object:  Table [dbo].[EMPLOYEE]    Script Date: 2020/06/28 0:49:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[EMPLOYEE](
	[ID] [varchar](6) NOT NULL,
	[NAME] [varchar](12) NOT NULL,
	[SEX] [varchar](2) NOT NULL,
	[SECTION] [varchar](12) NOT NULL
) ON [PRIMARY]
GO

レコードをエクスポートした場合、レコードはINSERT文の形で出力されます。

USE [sampleDB]
GO
INSERT [dbo].[EMPLOYEE] ([ID], [NAME], [SEX], [SECTION]) VALUES (N'00001', N'鈴木一郎', N'男', N'営業課')
INSERT [dbo].[EMPLOYEE] ([ID], [NAME], [SEX], [SECTION]) VALUES (N'00002', N'佐藤次郎', N'男', N'経理課')
GO


テーブル定義やレコードをエクスポートしておけば、誤ってテーブルを削除してしまったとしても再作成(リカバリ)できます!

またエクスポートした定義やレコードを使用すれば、
別のDB上(環境上)に同様のテーブルを作成できます!

タイトルとURLをコピーしました