資料庫表間資料複製 在利用資料庫開發時,常常會將一些表之間的資料互相匯入。當然可以編寫程式實現,但是,程式常常需要開發環境,不方便。最方便是利用sql語言直接匯入。既方便而修改也簡單。以下就是匯入的方法。 1。表結構相同的表,且在同一資料庫(如,table1,table2)Sql :insert into table1 select * from table2 (完全複製) insert into table1 select distinct * from table2(不複製重複紀錄) insert into table1 select top 5 * from table2 (前五條紀錄)2。 不在同一資料庫中(如,db1 table1,db2 table2)sql: insert into db1..table1 select * from db2..table2 (完全複製) insert into db1..table1 select distinct * from db2table2(不複製重複紀錄) insert into tdb1..able1 select top 5 * from db2table2 (前五條紀錄)3. 表結構不同的表或複製部分紀錄(如,dn_user,dn_user2)a. 建一個新表[DN_UserTemp](在老表dn_user上增加一列)CREATE TABLE [DN_UserTemp] ( [Num] [numeric](18, 0) IDENTITY (1, 1) NOT NULL)[Id] [idtype] NOT NULL ,[Name] [fntype] NOT NULL ,[Descript] [dstype] NULL ,[LogonNm] [idtype] NOT NULL ,[Password] [idtype] NULL ,[Gender] [char] (1) NULL ,[Quited] [booltype] NOT NULL,[OffDuty] [booltype] NOT NULL ,[Stopped] [booltype] NOT NULL, [OSBind] [booltype] NOT NULL, [Domain] [idtype] NULL ,[EMail] [fntype] NULL ,[UnitId] [idtype] NULL ,[BranchId] [idtype] NULL ,[DutyId] [idtype] NULL ,[LevelId] [idtype] NULL ,[ClassId] [idtype] NULL ,[TypeId] [idtype] NULL ,[IP] [varchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,[ExpireDT] [datetime] NULL ,[Sort] [int] NOT NULL ,[AllowDel] [booltype] NOT NULL,[UnitChief] [booltype] NOT NULL, [BranchChief] [booltype] NOT NULL ,[UnitDeputy] [booltype] NOT NULL ,[BranchDeputy] [booltype] NOT NULL , [Num] [numeric](18, 0) IDENTITY (1, 1) NOT NULL ) ON [PRIMARY]b. 將dn_uer2的資料拷入dn_usertempsql:insert into dn_usertemp select * from dn_user2c.將dn_usertemp 拷入dn_usersql:declare @i intdeclare @j intdeclare @Name fntypeset @i=1select @j=count(*) from dn_usertempwhile @i<@j 1beginselect @Name=Name from dn_usertemp where Num=@iprint @Nameinsert into dn_user (Name) values (@Name) where Num=@iselect @i=@i 1end---------------------------creat到--然後把資料庫名改成想複製到的那個庫的名稱