如何从PHP将XML发送到存储过程? 我在PHP中尝试了几种不同的数据类型。
这是PHP:
$model_look_xml = '<root><id>7</id><id>6</id><id>12</id></root>';
$query = mssql_init("AdvMS");
mssql_bind($query,"@model_look_xml",$model_look_xml,SQLVARCHAR, false, false, 200);
$result = mssql_execute($query);
最初的SP有@model_look_xml xml,它自己运行良好。只是不与PHP绑定。剩余的SP绑定很好,只是不是XML
我也尝试在SQL中将字符串转换为XML。 哪个在SP内部无效:
@model_look_xml varchar(200),
DECLARE @model_look_xml1 xml
set @model_look_xml1 = CAST(@model_look_xml AS XML)
答案 0 :(得分:0)
解决。
PHP方面:
mssql_bind($query,"@model_look_xml",$model_look_xml,SQLVARCHAR, false, false, 200);
SQL方面:
@model_look_xml xml,
解决这个问题的原因是:
SET ANSI_PADDING ON;
SET ANSI_WARNINGS ON;
set CONCAT_NULL_YIELDS_NULL ON;