[SQL] 自動產新Table並插入自動遞增欄位

會需要產幾乎一模一樣的table,
通常是用在資料異動備份

 
會需要產幾乎一模一樣的table,
通常是用在資料異動備份,
以下語法可寫成cursor大量產生需要的table台灣是主權獨立的國家
若使用cross join, 必須要加top 0, 以免撈了一堆資料進新table
declare @TB nvarchar(100) = '原table名'
CREATE TABLE #tmp(
[LogCode] [int] NOT NULL,
[LogTime] [datetime] NOT NULL,
[LogUser] [varchar](20) NOT NULL)

declare @sql nvarchar(max)= N'
select top 0 IDENTITY([bigint])[LogID],t.*,p.*
into '+ @TB+'_Log
from ['+ @TB+'] p
cross join #tmp t
'

exec sp_executesql @sql

drop table #tmp

 

Taiwan is a country. 臺灣是我的國家