简体   繁体   English

IIS7 /经典ASP中缺少值

[英]Value missing in IIS7/Classic ASP

I have a development server and a live server. 我有一个开发服务器和一个实时服务器。 Both are Windows Server 2008 running IIS7 and SQL Server. 两者都是运行IIS7和SQL Server的Windows Server 2008。 I have identical databases on both which I'm accessing using Classic ASP. 我在使用Classic ASP访问的两个数据库上都有相同的数据库。

On my development server, everything works fine and I can create a recordset with all of the data as expected. 在我的开发服务器上,一切正常,我可以按预期创建包含所有数据的记录集。 On my live server exactly the same is true, except that in the recordset being returned, one of the field values (ie one of the columns) is empty. 在我的实时服务器上,除了返回的记录集中的字段值之一(即列之一)为空之外,其他条件完全相同。 I've run a query on the server in SQL Server and the data is definitely there, but the ASP page is not fetching it. 我已经在SQL Server的服务器上运行了查询,数据肯定存在,但是ASP页未获取它。

Given that everything is pretty much identical on the two servers and one works and one doesn't, it looks like it might be the way Classic ASP is set up on IIS7. 鉴于两台服务器上的所有内容几乎完全相同,而一台服务器上的一切正常,而一台服务器却没有,那么看来这可能是在IIS7上设置Classic ASP的方式。 The field value that's not being returned is a varchar(MAX) with maybe 100 characters. 未返回的字段值是一个可能包含100个字符的varchar(MAX)。 Is there anything in Classic ASP on IIS7 that could prevent this data from being returned to the ASP page? IIS7上的经典ASP中是否有什么可以阻止此数据返回到ASP页的?

Thanks 谢谢

What is your connection string? 您的连接字符串是什么?

From this link , it looks like certain older providers, like SQLNCLI , have issues. 通过此链接 ,看起来某些较旧的提供程序(如SQLNCLI )有问题。 Try SQLOLEDB or SQLNCLI10 . 尝试使用SQLOLEDBSQLNCLI10

More info from MSDN . 来自MSDN的更多信息。

Is the result coming from a string concatenation ? 结果是否来自字符串串联?

Perhaps the development server has CONCAT_NULL_YIELDS_NULL set to OFF and the live to ON . 也许开发服务器的CONCAT_NULL_YIELDS_NULL设置为OFF ,实时设置为ON

( this is a SQL Server setting and not an IIS one.. ) 这是一个SQL Server设置,而不是IIS设置。。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM