我使用的是Oracle9,但该系统应该也适用于Oracle8和10。
问题是:日期字段不能存储超过秒的任何内容,但我存储的是以毫秒精度发生的一系列事件。显而易见的解决方案是创建一个新列来存储毫秒数。但这是更好的解决方案吗?
在我看来,这并不是很聪明,因为这样做意味着我的所有查询(有很多查询)都需要在ORDER BY子句中进行更改。
发布于 2009-03-11 03:06:32
您可以使用timestamp类型。这里有一个很好的解释:
http://it.toolbox.com/blogs/database-solutions/a-comparison-of-oracles-date-and-timestamp-datatypes-6681
尽管它在Oracle8中没有得到很好的支持。
发布于 2009-03-11 03:06:41
在Oracle8中,您必须做一个变通工作(varchar字段或两个字段,一个日期时间和第二个字段来保存毫秒)
如果您可以通过某种方式避免在Oracle8中执行此操作,请考虑TIMESTAMP数据类型。
发布于 2009-03-11 03:22:43
我建议你在支持Oracle8(如果它还没有停止服务的话,它很快就会停止服务)和毫秒级支持之间做出选择。在这两个中,我建议放弃Oracle8,只支持Oracle9或更高版本。
公平地说:我为一家竞争对手工作--我甚至建议换成我们。如果我关于Oracle8退出支持的信息是错误的,对不起。但这个建议是我能做的最公正的建议。
https://stackoverflow.com/questions/633173
复制相似问题