BULK INSERT
を使用してソース テーブルの順序を保持できることがわかりました
タブ区切りの表 C:\MyTable.txt
を指定すると、 、意図的に行の順序をずらしました:
FileName FileType wmsetup log bar txt wmsetup10 log WMSysPr9 prx WMSysPrx prx Wudf01000Inst log xpsp1hfm log _default pif 0 log 002391_ tmp 005766_ tmp
プレ>以下を実行し、SQL Server でテキスト ファイルの順序を保持しました:
IF EXISTS( SELECT 1 FROM sys.tables t INNER JOIN sys.schemas s on s.schema_id=t.schema_id WHERE t.name='myTable' AND t.[type]='U' AND s.name='dbo' ) DROP TABLE myTable GO CREATE TABLE dbo.myTable(FileName VARCHAR(80), FileType VARCHAR(30)) GO BULK INSERT myTable FROM 'C:\MyTable.txt' WITH ( firstrow=2 , fieldterminator='\t' , rowterminator='\n' ) GO ALTER TABLE myTable ADD ID INT IDENTITY(1,1) GO SELECT * FROM myTable GO
プレ>結果:
FileName FileType ID --------------- -------- ----------- wmsetup log 1 bar txt 2 wmsetup10 log 3 WMSysPr9 prx 4 WMSysPrx prx 5 Wudf01000Inst log 6 xpsp1hfm log 7 _default pif 8 0 log 9 002391_ tmp 10 005766_ tmp 11
プレ>