Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.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
为什么SQL Server上的列名在通过ASP页面访问时不区分大小写,而在通过PHP mssql模块访问时区分大小写?_Php_Sql Server - Fatal编程技术网

为什么SQL Server上的列名在通过ASP页面访问时不区分大小写,而在通过PHP mssql模块访问时区分大小写?

为什么SQL Server上的列名在通过ASP页面访问时不区分大小写,而在通过PHP mssql模块访问时区分大小写?,php,sql-server,Php,Sql Server,为什么SQL Server上的列名在通过ASP页面访问时不区分大小写,而在通过PHP mssql模块访问时区分大小写 例如,我们有一个IIS服务器,其中有许多ASP页面可以访问我们的SQL server。从数据库检索的表中的列名都不区分大小写。您可以键入所有大写字母、小写字母或混合字母,然后返回 然而,我们有一个运行Ubuntu(最新版本)的Linux服务器,它有一个完全更新的Apache2和PHP5,使用mssql模块连接到sql服务器,并进行了完全修补和更新,但是。。所有列名都区分大小写 当

为什么SQL Server上的列名在通过ASP页面访问时不区分大小写,而在通过PHP mssql模块访问时区分大小写

例如,我们有一个IIS服务器,其中有许多ASP页面可以访问我们的SQL server。从数据库检索的表中的列名都不区分大小写。您可以键入所有大写字母、小写字母或混合字母,然后返回

然而,我们有一个运行Ubuntu(最新版本)的Linux服务器,它有一个完全更新的Apache2和PHP5,使用mssql模块连接到sql服务器,并进行了完全修补和更新,但是。。所有列名都区分大小写

当DB管理员更改视图时,存储过程现在返回的列名都是大写的,而不是像昨天一样的小写,这就造成了问题

有没有办法调整mssql模块

以下是我的设置:

MSSQL Support   enabled
Active Persistent Links 0
Active Links    1
Library version FreeTDS

Directive   Local Value Master Value
mssql.allow_persistent  On  On
mssql.batchsize 0   0
mssql.charset   no value    no value
mssql.compatability_mode    Off Off
mssql.connect_timeout   5   5
mssql.datetimeconvert   On  On
mssql.max_links Unlimited   Unlimited
mssql.max_persistent    Unlimited   Unlimited
mssql.max_procs Unlimited   Unlimited
mssql.min_error_severity    10  10
mssql.min_message_severity  10  10
mssql.secure_connection Off Off
mssql.textlimit Server default  Server default
mssql.textsize  Server default  Server default
mssql.timeout   60  60

为什么不总是将列名视为区分大小写?如果您调用了一列
FloobSize
,那么将其引用为
FloobSize
FloobSize
会有什么好处?另外,您能解释一下“所有列名都区分大小写”的含义吗?如果您改为调用
FloobSize
FloobSize
,PHP是否会抛出错误?什么错误?这是一个“制表符与空格”、“vi与emacs”、“大括号在行尾与下一行”的参数。。。但是,由于我一直假定情况总是重要的,所以我从来没有遇到过任何问题:-)@scunlife对于关键字等可能是正确的(
SELECT
vs.
SELECT
),但我认为对于用户定义的实体来说,这不是完全相同的论点。如果您将某个东西命名为
splunge\u mort
,那么除了
splunge\u mort
,您为什么还要以任何其他方式引用它呢?很可能您是用一个应用程序连接到区分大小写的排序规则数据库,而不是用另一个应用程序连接到区分大小写的排序规则数据库。客户端堆栈在这件事上没有发言权。@Remus nice catch,从叙述中,我假设两个应用程序都连接到同一个数据库,并与同一个表通信。