【问题标题】:Data Type Mismatch in Criteria Query条件查询中的数据类型不匹配
【发布时间】:2019-07-22 03:24:50
【问题描述】:

当我尝试运行以下 INSERT INTO 查询时,出现以下消息:

“条件表达式中的数据类型不匹配”

我查看了我的所有字段,它们都是相同的(短文本)。我想知道它是否是“在哪里条件”。我需要在要插入信息的表中包含此字段吗?

这是我的INSERT 代码

INSERT INTO Fauna_ATT ( [Burn ID], [Burn Name], [Value Effected], [Pre Burn Action Details], [During Burn Action Details], [Post Burn Action Details] )
SELECT [Burn ID], [Burn Name], [Value Effected], [Pre Burn Action Details], [During Burn Action Details], [Post Burn Action Details]
FROM EPFP
WHERE ATT="TRUE";

【问题讨论】:

  • 我已取出“Where 条件”,它似乎工作正常。但我确实需要这个条件,因为我只希望在需要 ATT 时复制记录
  • 这是什么数据库?还显示 Fauna_ATTEPFP 的声明 - ATT 的类型是什么?
  • 那是无效的标准 SQL。您使用的是哪种 DBMS 产品?
  • 可能错误消息是说其中一列的类型不兼容。这就是我开始寻找问题的地方。
  • 为什么要复制记录而不只是使用查询?

标签: sql ms-access mismatch


【解决方案1】:

假设ATT 是一个是/否类型字段,不要使用引号。 TRUE 和 FALSE 是固有的布尔常量,分别持有 -1 和 0 的值。如果用文本分隔符括起来,则该值是文字字符串。

WHERE ATT=True

WHERE ATT=-1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多