I am going to use BULK INSERT. But the result is wrong. Could you please look at my code?I put all files path in a text file "list.txt". Then using a cursor to go through the table insert the context one by one.USE Bible;GOCREATE table dbo.FileLists( ID INT NOT NULL IDENTITY PRIMARY KEY, FilePath NVARCHAR(128),)CREATE TABLE dbo.ImportedTextFile( ID INT NOT NULL IDENTITY PRIMARY KEY, FilePath NVARCHAR(128), CONTENT NVARCHAR(MAX));GO-- Insert a sample recordINSERT INTO dbo.FileLists(FilePath) VALUES ('C:\Bible\list.txt');GO-- Read a sing text file based on file path and reture the text file contentCREATE PROCEDURE dbo.ReadSingleTextFile( @FilePath NVARCHAR(128), @FileContent NVARCHAR(max) output)ASBEGIN SET NOCOUNT ON; CREATE TABLE #Temp(Content nvarchar(max)) EXEC('BULK INSERT #Temp FROM "' + @FilePath + '"'); SELECT @FileContent = Content FROM #Temp DROP TABLE #TempENDGO-- Read all files into a table based on a list of file paths in aother tableSET NOCOUNT ON;DECLARE @FilePath nvarchar(128);DECLARE @Content nvarchar(max);DECLARE FilePath_Cursor CURSOR FOR SELECT FilePath FROM dbo.FileLists;OPEN FilePath_Cursor;FETCH NEXT FROM FilePath_Cursor INTO @FilePath;WHILE @@FETCH_STATUS = 0BEGIN EXEC dbo.ReadSingleTextFile @FilePath, @FileContent = @Content output; INSERT INTO dbo.ImportedTextFile(FilePath, Content) VALUES(@FilePath,@Content) FETCH NEXT FROM FilePath_Cursor INTO @FilePath;ENDCLOSE FilePath_Cursor;DEALLOCATE FilePath_Cursor-- Test the resultSELECT * from dbo.ImportedTextFileThe context in list.txt looks likeC:\Bible\1chron.txtC:\Bible\1corinth.txtC:\Bible\1john.txtC:\Bible\1kings.txtC:\Bible\1peter.txtC:\Bible\1samuel.txtC:\Bible\1thess.txt
Thank you very much!