0

当我选择 DESC 表名时,我看到一些列 TIMESTAMP(3)(11)。3 是小数秒精度。什么是 11,如何定义这样的列?

ALTER TABLE name ADD col TIMESTAMP(3)(11)例如给出 ORA-00907: 缺少右括号

4

2 回答 2

1

我不知道 TIMESTAMP 类型的任何第二个参数——即使有一个,我也希望看到 TIMESTAMP(3,11) 而不是您所看到的。

我想知道您使用的 SQLPlus 版本是否不能正确理解数据类型,这是它可以表示它的最佳方式——在这种情况下,真正的数据类型可能类似于 TIMESTAMP(3) WITH TIME ZONE。

如果您从 ALL_TAB_COLUMNS 中为相关列选择 DATA_TYPE,则会显示什么时间戳?

于 2011-10-06T17:22:28.040 回答
0

TIMESTAMP(3)(11) 表示数据类型为 TIMESTAMP(3),它允许数据长度为 11。并非所有工具(第 3 方程序)都以这种方式显示。但是,如果您发现标记为 timestamp(3)(11) 而不仅仅是 timestamp(3) 的列,则无需担心 :)

于 2013-07-17T09:10:09.680 回答