Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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连接不返回所有字段值;订单更改时返回的不同字段值_Sql_Sql Server 2005 - Fatal编程技术网

SQL连接不返回所有字段值;订单更改时返回的不同字段值

SQL连接不返回所有字段值;订单更改时返回的不同字段值,sql,sql-server-2005,Sql,Sql Server 2005,我使用下面的SQL查询3个简单的表并返回结果。当我在SQLServer2005EM(正在使用的数据库)中运行此查询时,将返回正确的记录集结果。当我通过SQL语句或存储过程从我的网页(ASP)执行此操作时,我会得到一些列的空值。另外,我注意到,当我更改在FROM子句中选择的表的顺序时,前面的一些列会返回空值。我的SQL有什么问题吗?当调用它时,它不能工作?我在本地开发了我的应用程序,效果很好。当我将其部署到客户端网络时,问题开始出现。。。客户端运行Win 2000 SP4作为应用程序服务器,我的应

我使用下面的SQL查询3个简单的表并返回结果。当我在SQLServer2005EM(正在使用的数据库)中运行此查询时,将返回正确的记录集结果。当我通过SQL语句或存储过程从我的网页(ASP)执行此操作时,我会得到一些列的空值。另外,我注意到,当我更改在FROM子句中选择的表的顺序时,前面的一些列会返回空值。我的SQL有什么问题吗?当调用它时,它不能工作?我在本地开发了我的应用程序,效果很好。当我将其部署到客户端网络时,问题开始出现。。。客户端运行Win 2000 SP4作为应用程序服务器,我的应用程序是在ASP 3.0中使用SQL server 2005数据存储开发的

SELECT
Scorecard_Measure.Measure,
Scorecard_Measure.Target,
Scorecard_Measure.YTD,
Scorecard_Measure.Status,
Scorecard_Measure.Explanation,
Scorecard_Measure.Division,
Scorecard_Measure.ZIndex,
Scorecard_Measure.LastUpdated,
Scorecard_Measure.ID,
Scorecard_Objectives.Details,
Scorecard_Objectives.ZIndex,
Scorecard_ObjectiveCats.IdentityLetter
FROM
[Scorecard_Measure],
[Scorecard_Objectives],
[Scorecard_ObjectiveCats]
WHERE
Scorecard_Measure.ObjID=Scorecard_Objectives.ID
AND Scorecard_Objectives.ObjCatID = Scorecard_ObjectiveCats.ID
AND Scorecard_Measure.FiscalYear = '2011'
AND Scorecard_Measure.Publish='Y'
ORDER BY Scorecard_Measure.LastUpdated DESC
Scorecard_ObjectiveCats.ID是Scorecard_Measures表中的外键,Scorecard_ObjectiveCats.ID是Scorecard_Objectives表中的外键

还有一件奇怪的事。我有两个相同的列名,当我引用这些列时,服务器不会像我之前看到的那样抛出错误:“您的结果有同名的列,使用它们来自的表引用它们”。。。e、 g.rs(“Scorecard_Objectives.ZIndex”)和rs(“Scorecard_Measure.ZIndex”)——当我使用这些引用时,我从IIS得到一个错误


任何要点都将不胜感激。提前谢谢

使用不同的变量访问两个ZINDEX。尝试此联接查询

SELECT
Scorecard_Measure.Measure,
Scorecard_Measure.Target,
Scorecard_Measure.YTD,
Scorecard_Measure.Status,
Scorecard_Measure.Explanation,
Scorecard_Measure.Division,
Scorecard_Measure.ZIndex as MZIndex,
Scorecard_Measure.LastUpdated,
Scorecard_Measure.ID,
Scorecard_Objectives.Details,
Scorecard_Objectives.ZIndex as OZIndex,
Scorecard_ObjectiveCats.IdentityLetter
FROM
Scorecard_Measure INNER JOIN Scorecard_Objectives 
ON Scorecard_Measure.ObjID=Scorecard_Objectives.ID
AND Scorecard_Measure.FiscalYear = '2011'
AND Scorecard_Measure.Publish='Y'
INNER JOIN Scorecard_ObjectiveCats 
ON Scorecard_Objectives.ObjCatID = Scorecard_ObjectiveCats.ID
ORDER BY Scorecard_Measure.LastUpdated DESC

这不应该发生。你有两个数据库被混淆了吗?@SteveWellens,没有。我的应用程序中的连接字符串指向这个特定的数据库。这太奇怪了。这一切都像本地主机上的一个魅力。让我吃惊的是,当我在SQL Server中的一个新查询窗口中运行查询时,查询会收回所有数据…@markjohnsi-我没有看到您在查询中预先添加表的所有者。您是否有多个具有相同表名的架构?如果在每个表前面加上所有者(假设所有者是dbo,这将成为dbo.Scorecard\u Measure,…),会发生什么情况?@Lieven,我会试试。不,我没有在表的前面加dbo。实际上,它是数据存储中表的所有者。这些是数据库中唯一的表。如果你查看网页的“源”,你会看到空白记录吗?想知道你是否有非HTMLEncoded的字符会弄乱演示文稿。