如何批量插入空(非空)值

时间:2021-03-30 02:57:19

标签: sql-server null bulkinsert

我在 SQL Server 中创建了一个 Table_1,有两个字段:

Field1:varchar(15),可为空 字段 2:int

然后我使用下面的批量插入命令插入数据:

BULK INSERT [Table_1] FROM 'C:\DN4.DAT' WITH (BATCHSIZE = 10000, DATAFILETYPE = 'widechar', FORMATFILE = 'C:\DN4.XML', MAXERRORS = 2147483647, ROWS_PER_BATCH = 10000, TABLOCK);

DN4.xml 的内容为:

<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <RECORD>
  <FIELD ID="1" xsi:type="NCharTerm" TERMINATOR="\x57\x5B\xB5\x6B\xC8\x7E\x62\x6B\x26\x7B" MAX_LENGTH="30" COLLATION="Chinese_PRC_CI_AS"/>
  <FIELD ID="2" xsi:type="NCharTerm" TERMINATOR="\xB0\x8B\x55\x5F\xC8\x7E\x62\x6B\x26\x7B" MAX_LENGTH="24"/>
 </RECORD>
 <ROW>
  <COLUMN SOURCE="1" NAME="\x4E\x00\x61\x00\x6D\x00\x65\x00" xsi:type="SQLVARYCHAR" LENGTH="15" NULLABLE="YES"/>
  <COLUMN SOURCE="2" NAME="\x41\x00\x67\x00\x65\x00" xsi:type="SQLINT" NULLABLE="YES"/>
 </ROW>
</BCPFORMAT>

DN4.dat 的内容为:

W[祂葉bk&{1 皨U_葉bk&{W[祂葉bk&{2 皨U_葉bk&{

第一条记录的字段1为空字符串,不为NULL,而第二条记录的字段1为NULL字符串,不为空。

但是在批量插入后,两条记录都将 field1 显示为 NULL。

那么,如何以不同的方式向 SQL Server 数据库插入空值和 NULL 值?

0 个答案:

没有答案