Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 将NULL值从xml插入数据库_Asp.net_Sql Server - Fatal编程技术网

Asp.net 将NULL值从xml插入数据库

Asp.net 将NULL值从xml插入数据库,asp.net,sql-server,Asp.net,Sql Server,如何将XML字符串中的空值插入数据库 当我插入时,DOB字段插入“1900-01-01 00:00:00.000”和性别字段“”。 我想在此列中插入空值。请帮帮我 <Child> <EnrolmentNo>01113702010</EnrolmentNo> <Name>Ankush</Name> <DOB></DOB> <Email>Anushka@gmail.com</Emai

如何将XML字符串中的空值插入数据库

当我插入时,DOB字段插入“1900-01-01 00:00:00.000”和性别字段“”。 我想在此列中插入空值。请帮帮我

<Child>
  <EnrolmentNo>01113702010</EnrolmentNo>
  <Name>Ankush</Name>
  <DOB></DOB>
  <Email>Anushka@gmail.com</Email>
  <Gender></Gender>
  <Phone>9990234323, 9452344321</Phone>
  <RegistrationDate>2013-11-12T00:00:00</RegistrationDate>
  <ValidUpto>2014-12-12T00:00:00</ValidUpto>
</Child>

@Input    XML 
INSERT INTO KP_StudentsTemp  
(    
[EnrolmentNo],[SessionId],[BatchId],[SemesterId],  
[FirstName],[MiddleName],[LastName],[DOB],[Email],[Gender],[Phone],  
[RegistrationDate],[ValidUpto]
)
SELECT (XNodes.value('(EnrolmentNo)[1]','varchar(32)')),
XNodes.value('(Name)[1]','varchar(32)'),   
XNodes.value('(DOB)[1]','datetime'),  
XNodes.value('(Email)[1]','varchar(256)'),    
XNodes.value('(Gender)[1]','char(1)'),  
XNodes.value('(Phone)[1]','varchar(64)'),  
XNodes.value('(RegistrationDate)[1]','datetime'),  
XNodes.value('(ValidUpto)[1]','datetime')
FROM @input.nodes('/Main/Child') AS XTbl(XNodes) 

01113702010
安库什
Anushka@gmail.com
9990234323, 9452344321
2013-11-12T00:00:00
2014-12-12T00:00:00
@输入XML
插入KP_StudentsTemp
(    
[EnrolmentNo]、[SessionId]、[BatchId]、[SemesterId],
[名字],[中间名],[姓氏],[出生日期],[电子邮件],[性别],[电话],
[注册日期],[有效期]
)
选择(XNodes.value('(EnrolmentNo)[1],'varchar(32)'),
值('(名称)[1]','varchar(32)'),
值('(DOB)[1],'datetime'),
XNodes.value(“(Email)[1]”,“'varchar(256)”,
XNodes.value(‘(性别)[1]’,‘字符(1)’),
XNodes.value(“(Phone)[1]”,“'varchar(64)”,
值('(RegistrationDate)[1],'datetime'),
值('(ValidUpto)[1]','datetime')
从@input.nodes('/Main/Child')作为XTbl(XNodes)

您可以使用
NULLIF
函数

@Input    XML 
INSERT INTO KP_StudentsTemp  
(    
[EnrolmentNo],[SessionId],[BatchId],[SemesterId],  
[FirstName],[MiddleName],[LastName],[DOB],[Email],[Gender],[Phone],  
[RegistrationDate],[ValidUpto]
)
SELECT (
XNodes.value('(EnrolmentNo)[1]','varchar(32)')),
XNodes.value('(Name)[1]','varchar(32)'),   
NULLIF(XNodes.value('(DOB)[1]','datetime'),'1900-01-01 00:00:00.000'),  
XNodes.value('(Email)[1]','varchar(256)'),    
NULLIF(XNodes.value('(Gender)[1]','char(1)'),''),  
XNodes.value('(Phone)[1]','varchar(64)'),  
XNodes.value('(RegistrationDate)[1]','datetime'),  
XNodes.value('(ValidUpto)[1]','datetime')
FROM @input.nodes('/Main/Child') AS XTbl(XNodes)