猫型iPS細胞研究所

Windows、Linux、iOS、DB、Network

SQLServer

SQLServer テーブル単位のバックアップと復元

投稿日:

方法1.bcpユーティリティーを使用する方法

bcpユーティリティーを利用してエクスポート、インポートをする方法です。

(1)bcpユーティリティーでエクスポート

c:\>bcp TestDB.dbo.users out c:\users.txt -c -S localhost -U sa -P password

(2)インポートするテーブルを作成します

※場合によっては、復元したいテーブルを空にします

(3)データをインポートします

c:\>bcp TestDB.dbo.users in c:\users.txt -c -S localhost -U sa -P password

次に紹介するSQLの方法と比べ、そのままインポートできることがbcpユーティリティーの魅力です。

方法2.SELECT INSERTを使用する方法

(1)インポートするテーブルを作成します

(2)SELECT INSERT でデータをコピーします

insert into users_bk  select * from users_original

※この方法には大きな問題点があります。
列リストが使用されていて、IDENTITY_INSERT が ON のときに限り、テーブル ‘users_bk’ の ID 列に明示的な値を指定できます。
列のプロパティにおいて、IDENTITYの指定の(IDである)を「はい」にしていると、インポートすることができない。

「変更の保存が許可されていません。」とういエラーが出て、テーブルの構成を変更できないのだ。

sqlserver001

ツール > オプション > デザイナー にある
「テーブルの再作成を必用とする変更を保存できないようにする」
のチェックを外せば構成を変更することができる。

sqlserver002

『テーブルの再作成時にメタデータが失われ、データが直接失われる場合があります。・・・』ということがこの設定の存在理由です。
あまり意識しなくてもよさそうですが、テーブルの構成を変更しなくてはインポートできないのは大きな問題です。
方法1のbcpユーティリティーを使用する方法がおすすめです。

Gooleアドセンス用336

Gooleアドセンス用336

-SQLServer
-

執筆者:

関連記事

sqlserver

SQL Server 構成マネージャーを起動する

SQL Server 構成マネージャーがない。 何故か、コンピューターの管理の中に入っていた。 また検索窓からは以下のように検索できる。 ・SQL Server 2014 の場合   SQLServe …

sqlserver

bcp ユーティリティで、「ホストのデータファイルが開けません。」

bcp ユーティリティを使用して、テーブルをエクスポートしようと思ったら、以下のエラーがでてしまった。 C:\>bcp TestDB.dbo.users out c:\users.txt -c …

sqlserver

SQL Server Browser を起動する方法

SQL Server構成マネージャーより起動できるはずが、なぜか開始も停止もできない。 コントロール パネル > システムとセキュリティ > 管理ツール > サービス を見ると、SQL Server …

sqlserver

「.NET」と「ASP.NET」からのSQL Serverへのコネクションを確認する(1)

INDEX1 コネクション数と状態を確認する2 コネクションプールとは3 コネクションを制御する設定 コネクション数と状態を確認する SQLSERVERのコネクション数を確認するには下記のSQLを実行 …

sqlserver

SQLSERVERのトランザクションログの切り捨て・圧縮

トランザクションログはデータの登録・更新記録です。 INDEX1 復旧モデル2 切り捨て3 圧縮 復旧モデル トランザクションログを扱うには、トランザクションログがどのように使用されるかを知る必要があ …