網頁

2013年6月27日 星期四

[SQL] 資料庫A的資料表複製到資料庫B(Transact-SQL)

把資料庫A的資料表C新增到資料庫B

1)先執行資料庫B
   USE [DB_B]
   GO

2)若資料庫B無資料表C,則先在資料庫B先新建資料表C

   CREATE TABLE [Table_C](
       [SN] [decimal](18, 0) IDENTITY(1,1) NOT NULL,
       [col2] [nvarchar](50) NULL,
       [col3] [decimal](12, 2) NULL,
       [col4] [decimal](12, 2) NULL,
    ) ON [PRIMARY]

   GO

3)將資料庫A的資料表C複製到資料庫B的資料表C內容

   INSERT INTO [Table_C] SELECT * FROM [DB_A].[Table_C]
   GO

4) a1若有自動增加值的欄位,要將IDENTITY_INSERT設定為ON,且欄位都要列出來
   否則會出現錯誤訊息【位於資料表'Table_C'的識別資料行其外顯值只有當使用了資料行
   清單且 IDENTITY_INSERT 為 ON 時才能指定。】
   例如:2)的資料表C,[SN]為自動增加序號,把3)改成以下

   SET IDENTITY_INSERT [Table_C] ON
   GO

   INSERT INTO [Table_C](
       [SN],
       [col2],
       [col3],
       [col4]
    ) SELECT * FROM [DB_A].[Table_C]
   GO

   SET IDENTITY_INSERT [Table_C] OFF -- 一定要記得 OFF 其他表格才能夠在ON
   GO
 

沒有留言:

張貼留言