0

我正在尝试使用显示的规范在 Access 中使用删除命令,但 Access 一直说“标准表达式中的数据类型不匹配”。有谁知道该怎么做?

DELETE ORDERS.OrderDate, ORDERS.CustomerID
FROM ORDERS
WHERE (((ORDERS.OrderDate)='2008-01-24') AND ((ORDERS.CustomerID)="C0003"));
4

5 回答 5

1
DELETE ORDERS.OrderDate, ORDERS.CustomerID, * FROM ORDERS WHERE
(((ORDERS.OrderDate)=#1/24/2008#) AND ((ORDERS.CustomerID)=3));
于 2013-06-12T16:38:12.243 回答
0

Access 中的日期由井号包围#

WHERE (((ORDERS.OrderDate)=#2008-01-24#) AND ((ORDERS.CustomerID)="C0003"));
于 2013-06-09T21:34:01.040 回答
0

您确定 Orders.OrderDate 是日期/时间数据类型吗?如果不尝试:-

DELETE ORDERS.OrderDate, ORDERS.CustomerID
FROM ORDERS
WHERE (((cdate(ORDERS.OrderDate))>#2008/01/24#));
于 2013-06-10T13:03:28.130 回答
0

尝试执行 SELECT 查询,并分别尝试这些条件中的每一个。如果该 DATE 字段确实是日期/时间,则您需要在前后加上 # 号。

SELECT ORDERS.OrderDate, ORDERS.CustomerID
FROM ORDERS
WHERE (ORDERS.OrderDate)="#1/24/2008#";

SELECT ORDERS.OrderDate, ORDERS.CustomerID
FROM ORDERS
WHERE (ORDERS.CustomerID)="C0003";

如果其中任何一个发生爆炸,那么您至少可以缩小哪个部分不起作用,我们可以专注于那里。

于 2013-06-10T15:34:18.250 回答
0

试试这个

DELETE ORDERS.OrderDate, ORDERS.CustomerID
FROM ORDERS
WHERE ORDERS.OrderDate = #01/24/2008# AND ORDERS.CustomerID = "C0003"
于 2013-06-10T15:42:18.867 回答