Sql server 当完全相同的查询在winSQL中返回记录时,Coldfusion查询不返回任何记录
有两个表格:u_案例和时间表 u_case和u_case上的计划之间存在一对多关系。cs_caseid=schedule.sd_caseid 数据库是SqlServer 我需要u_case.cs_一章中13条的所有记录 但在u_schedule.sd_类中没有“dline”,或在schedule.sd_类型中没有“pln13” 这个精确的查询在WinSQL中工作,并返回22条记录。 使用ColdFusion时,相同的精确查询返回2条记录(使用cfdump验证) 对于Coldfusion为什么会出现这个问题以及如何解决这个问题,有什么建议吗?我发现了一些关于这个问题的疑问Sql server 当完全相同的查询在winSQL中返回记录时,Coldfusion查询不返回任何记录,sql-server,coldfusion,Sql Server,Coldfusion,有两个表格:u_案例和时间表 u_case和u_case上的计划之间存在一对多关系。cs_caseid=schedule.sd_caseid 数据库是SqlServer 我需要u_case.cs_一章中13条的所有记录 但在u_schedule.sd_类中没有“dline”,或在schedule.sd_类型中没有“pln13” 这个精确的查询在WinSQL中工作,并返回22条记录。 使用ColdFusion时,相同的精确查询返回2条记录(使用cfdump验证) 对于Coldfusion为什么会出
SELECT a.cs_caseid, a.cs_case_number, a.cs_date_filed, a.cs_short_title, a.cs_office, a.cs_type
FROM u_case a
WHERE a.cs_chapter = 13
AND a.cs_date_term is null
AND 0 = (
select count(b.sd_caseid)
from schedule b
WHERE b.sd_caseid = a.cs_caseid
AND b.sd_class = "dline"
and b.sd_type = "pln13"
)
我在三台服务器(2台CF10和1台CF9)上遇到此问题。我还有其他的查询,这是发生在…通常CF查询不返回任何记录
提前谢谢。我想知道CF是否只是在解析您那里的奇怪ish SQL格式时遇到了问题?试试这个:
SELECT a.cs_caseid, a.cs_case_number, a.cs_date_filed, a.cs_short_title, a.cs_office, a.cs_type
FROM u_case a
WHERE a.cs_chapter = 13
AND a.cs_date_term is null
AND NOT EXISTS (
SELECT 1
FROM schedule b
WHERE b.sd_caseid = a.cs_caseid
AND b.sd_class = "dline"
AND b.sd_type = "pln13"
)
在这两种情况下,您是否都以同一用户的身份连接到数据库?值得检查。我必须和管理员谈谈这件事。感谢您的指导,我想知道您在硬编码数据值上使用(非标准)双引号,而不是单引号,这是不是有些奇怪?是的,刚刚检查过。两者都使用相同的useridI。我已经尝试了两种方法。我从单引号开始。当然,我只是把它改回了单引号。没有帮助。作为一个单独的测试,我使用并将它们设置为这些文本。那也没用。