我试图使用xp_cmdshell读取文件目录,然后将这些文件名称粘贴到日志表中。每次我阅读目录时,我只是想将新文件添加到日志表中。下面是我现在所拥有的,但它很混乱。读取文件目录并将文件输入到SQL表格日志中,但只输入新文件
Declare @FileName Table(FileList Varchar(255))
Insert Into @FileName
EXEC XP_CMDSHELL 'dir "C:\Data Log\EODFiles\*.CSV" /b'
Declare @FilePath Varchar(255)
Select Top 1 FilePath= FileList
FROM [dbo].[EOD_Log]
right join @FileName
on filelist = File_log
where filelist is NOT NULL and File_log is NULL
Insert Into [dbo].[EOD_Log] (File_log)
select @filepath from @FileName where @filepath is not NULL
代码查询我需要的数据,但没有将其插入到eod_log表中。 –
@ FilePath2从不使用。 SELECT结果不被使用(为什么不直接将它们插入到表中)。 –
对不起,应该是@filepath而不是filepath2。在此之前,我有一个过程来识别不在我目录中的EOD_log表中的任何东西。然后加载不在EOD_Log中的文件。在该文件已被加载后,我想要将该文件名添加到EOD_log中。这是程序的一部分。但我不能让它插入。你能帮我直接插入语句吗? –