gpt4 book ai didi

php - MSSQL 标量值函数 + PHP

转载 作者:搜寻专家 更新时间:2023-10-31 21:43:38 25 4
gpt4 key购买 nike

这里是第一个帖子/问题。我正在尝试使用以下查询访问 PHP 中的标量值函数:

select *, dbo.fnFunctionName_asArray(AnID,';') as refRes FROM ResourceDB where UniqueID = 'IDgoesHere'

此查询在 MS SQL Server Management Studio 中运行得非常好,但是当尝试通过 PHP 运行查询时,我遇到了一个可怕的错误。

这是 PHP 代码本身:

$sql_r = "select *, dbo.fnFunctionName_asArray(AnID,';') as refRes FROM ResourceDB where UniqueID = 'IDgoesHere'";
$r_r = mssql_query($sql_r, $msdbc);

错误如下:

Warning: mssql_query() [function.mssql-query]: message: SELECT failed because the following SET options have incorrect settings: 'CONCAT_NULL_YIELDS_NULL, ANSI_WARNINGS, ANSI_PADDING'. Verify that SET options are correct for use with indexed views and/or indexes on computed columns and/or filtered indexes and/or query notifications and/or XML data type methods and/or spatial index operations. (severity 16) in

我进行了广泛的搜索,找到了有关存储过程的信息,但没有找到有关 MSSQL 中的函数的信息。我也不确定如何解释错误消息。

提前致谢。

最佳答案

错误信息是关键:

Warning: mssql_query() [function.mssql-query]: message: SELECT failed because the following SET options have incorrect settings: 'CONCAT_NULL_YIELDS_NULL, ANSI_WARNINGS, ANSI_PADDING'. Verify that SET options are correct for use with indexed views and/or indexes on computed columns and/or filtered indexes and/or query notifications and/or XML data type methods and/or spatial index operations. (severity 16) in

当尝试使用某些功能时,SQL Server 对您的连接设置很挑剔。

您正在使用不同的 SSMS 设置和您的 php 程序连接到 SQL Server。它们的默认值必须不同。从 SSMS 运行此 SQL 命令,然后从 php 中运行:

DBCC USEROPTIONS 

它将显示您的实际设置,这些设置是不同的。尝试使用这些设置:

SET ANSI_NULLS ON 
SET CURSOR_CLOSE_ON_COMMIT ON
SET ANSI_NULL_DFLT_ON ON
SET ANSI_PADDING ON
SET QUOTED_IDENTIFIER ON
SET ANSI_WARNINGS ON
SET ARITHABORT ON
SET CONCAT_NULL_YIELDS_NULL ON
SET NUMERIC_ROUNDABORT OFF

关于php - MSSQL 标量值函数 + PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7262881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com