【问题标题】:DB2 table ignoring data type?DB2 表忽略数据类型?
【发布时间】:2014-03-21 18:08:29
【问题描述】:

我有一个表,其中有一列是 char 数据类型。

这两个查询都返回相同的结果而不会引发任何错误:

  SELECT * FROM MY_TABLE WHERE CHAR_COL = 0

  OR

  SELECT * FROM MY_TABLE WHERE CHAR_COL = '0'

为什么会这样?

【问题讨论】:

  • 是的,抱歉,我更新了..

标签: sql char db2


【解决方案1】:

我认为问题是为什么而不是什么。 答案是因为数据库引擎在某些情况下足够聪明,可以将一种数据类型隐式转换为另一种数据类型。

它没有忽略数据类型,只是隐式处理它:

来源: IBM Casting

【讨论】:

  • 如果您不在大型机 DB2 上,Linux/Unix/Windows 上的 DB2 也一直在为 a while 进行隐式转换。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-12
  • 2021-03-07
  • 2021-11-29
  • 1970-01-01
  • 2013-08-24
  • 1970-01-01
相关资源
最近更新 更多