【发布时间】:2013-12-04 20:01:05
【问题描述】:
我在 MS Access 中有一个查询,该查询已保存并在直接从 ms access 启动时有效。
我创建了一个 php 页面,该页面通过按名称调用此查询来输出该信息,但查询不返回任何内容! 我的代码应该可以工作,因为我调用了 Access 中的其他查询,并且它们确实返回了数据。
- 在 Access 中启动(双击)时查询有效
- 从 PHP
"SELECT * see query below"键入和执行时查询不返回结果 - 当 MS Access-name 从 PHP
"SELECT * FROM Query1"调用时,查询不返回结果 - 当 MS Access-name 从 PHP
"SELECT * FROM Query2"调用时,同一数据库中的其他查询按预期执行
SELECT *
FROM (SELECT a2.[vendor_oel_yr],
Count(a2.qty) AS eol_qty
FROM (SELECT "wintel" AS Platform,
s.city & "," & s.state AS
[Physical Location],
"" AS
[Special Flag (Project)],
"" AS
[Special Flag (sub location)],
"" AS
[location Floor],
"" AS
[Room Discriptor],
Format(s.unitprce, "currency") AS [Unit Price],
"hp" AS Manufacturer,
t.make_model AS Model,
s.itemnmbr AS [Part Number],
s.qty AS Qty,
s.itemdesc AS Description,
s.sn AS [Serial Number]
,
""
AS [Asset Tag #],
"" AS Environment,
t.computer AS
[Device Name (Naming Standard)],
s.docdate AS [Install Date],
4 AS
[Vendor Useful Life],
"" AS
[Operational Useful Life],
s.docdate + ( 4 * 365 ) AS
[Vendor EOL Date],
"" AS
[Operational EOL Date]
,
Format(s.qty * s.unitprce, "currency") AS
[Purchase Price],
Year(s.docdate + ( 4 * 365 )) AS Vendor_OEL_Yr
FROM sayers_invoice AS s
INNER JOIN tamit_wintel AS t
ON s.sn = t.serial_number
WHERE Len(s.sn) > 0) AS a2
GROUP BY a2.[vendor_oel_yr]) AS a2O;
【问题讨论】:
-
做过调试吗?检查 php 中 db 调用的返回值?
-
我多次调用多个查询(同一个数据库)。它们都使用 PHP。此查询的唯一例外 - 从 MS Access 调用时它可以工作
-
你试过直接在访问时执行结果查询吗?
-
仅仅因为其他查询有效就没有任何意义。检查返回值。如果你得到一个失败指示,无论你使用什么数据库库都应该有一些方法来告诉你错误是什么。
-
我被困在这里,不知道该怎么办。我尝试在 PHP 中输入此查询并调用它 - PDO 返回空结果集。有什么办法可以调试吗?
标签: php sql ms-access pdo odbc