2010-01-13 66 views
7

我对使用mssql驱动程序的SQL Server 2008使用php。任何人都知道将表值参数传递给存储过程的方法吗?Php SQL Server表值参数

+0

你的意思是像'EXEC mySP @ tname = N'mytable''然后mySP在表mytable上执行一个查询? – VolkerK 2010-01-13 22:24:22

+1

不,我其实是指将代表表格值的数据传递给表格值参数。 – AdamA 2010-01-14 13:29:19

回答

6

通过PHP MSSQL驱动程序,表值参数是not yet supported

您必须尝试其他方法,例如将TVP转换为XML并将其作为流传递。

+0

一些后续注意事项: 首先,请注意,上述引用的驱动程序是microsoft php驱动程序,但不是驱动程序(“mssql”),许多用户使用php安装标准并用于跨平台的原因。 尽管驱动程序当前不支持tvps,因为您可以通过php数据类型传递tvps。我们确实找到了解决办法。如果已经在数据库中创建了tvp“TYPE”,则可以在查询中声明此类型的变量并向其中插入行。随后可以使用此变量作为存储过程的执行命令的参数。 – AdamA 2010-01-15 00:37:45