Sql server 我想在sql中从CSV文件大容量导入,但新行的\n在sql中不起作用

Sql server 我想在sql中从CSV文件大容量导入,但新行的\n在sql中不起作用,sql-server,csv,Sql Server,Csv,我想在sql中从CSV文件大容量导入,但新行的\n在sql中作为行终止符不起作用。如果我使用,它不会从csv文件中读取任何记录\n但是当我使用 ROWTERMINATOR = '0x0A' 它把所有的记录都弄混了 这是我在sp中使用的代码 Create Table #temp ( Field1 nvarchar(max) null, Field2 nvarchar(max) null, Field3 nv

我想在sql中从CSV文件大容量导入,但新行的\n在sql中作为行终止符不起作用。如果我使用,它不会从csv文件中读取任何记录\n但是当我使用

  ROWTERMINATOR = '0x0A'
它把所有的记录都弄混了

这是我在sp中使用的代码

     Create Table #temp    
     (    
      Field1 nvarchar(max) null,  
      Field2 nvarchar(max) null,    
      Field3  nvarchar(max) null
     )     

     BULK INSERT #temp       
     FROM 'c:\file.csv'    
     WITH    
     (    
         FIRSTROW = 2,    
         FIELDTERMINATOR = ',',  --CSV field delimiter    
         ROWTERMINATOR = '\n',   --not working
        --ROWTERMINATOR = '\r',   --not working
        --ROWTERMINATOR = char(10),   ---not working  
        --ROWTERMINATOR = char(13),   ---not working    
         TABLOCK     
     ) 





        INSERT INTO table_name    
        (     
          tbl_field1,tbl_field2,tbl_field3
        )    

        SELECT     
          field1,     
          field2,    
          field3    
        FROM #temp

提前谢谢

我是在@DVO的帮助下完成的。谢谢@dvo的回答。按照您的指示,它工作正常。我使用notepad++查看隐藏字符并相应地处理它们

尝试
CHAR(10)
和/或
CHAR(13)
\r
)。如果这不起作用,请发布更多代码以显示您在哪里使用
行终止符
。看起来这取决于您的csv文件的行终止符是什么。。。尝试在文本编辑器(如记事本+)中打开它,并显示所有字符,以查看每行末尾的字符。它可以是空的(
\0
/
CHAR(0)
)记事本或记事本++?记事本++有一个选项,可以
显示所有字符
,并将显示
CR
LF
字符。当我使用行终止符='0x0A'时,您的意思是什么?它混淆了所有记录。我认为您应该使用
0x0A
。你能发布完整的
批量插入
行并模拟csv名称吗?