一个有关sysdate建表的问题

[复制链接]
查看11 | 回复9 | 2014-9-15 12:10:01 | 显示全部楼层 |阅读模式


QQ图片20141022123015.jpg (25.31 KB, 下载次数: 8)
下载附件
2014-10-22 12:30 上传

使用这种方式建表,取sysdate为创建时间的时候,如果数据太多,会不会导致有些不同数据的时间可能会出现不一样的情况?

回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
不会,一致性。
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
moseslin 发表于 2014-10-22 12:51
不会,一致性。

谢谢答疑,非常感谢。
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
不会不同,不过,此一致可不是一致性的一致。
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
sysdate是命令开始执行的那个时间
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
〇〇 发表于 2014-10-22 15:57
sysdate是命令开始执行的那个时间

非常感谢,您的回复解决了我的一切疑惑。
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
udfrog 发表于 2014-10-22 14:56
不会不同,不过,此一致可不是一致性的一致。

明白了,谢谢。
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
做个试验看看:
CREATE OR REPLACE FUNCTION F_TEST(P_N NUMBER) RETURN DATE
AS
BEGIN
DBMS_LOCK.SLEEP(5);
RETURN SYSDATE;
END;
/

CREATE TABLE TEST AS
SELECT F_TEST(LEVEL) CREATED_TIME,SYSDATE SYSDATE_VAL FROM DUAL CONNECT BY LEVEL<=5;
Table created.
Elapsed: 00:00:25.04

SELECT * FROM TEST;
CREATED_TIMESYSDATE_VAL
------------------- -------------------
2014-10-22 10:26:19 2014-10-22 10:26:14
2014-10-22 10:26:24 2014-10-22 10:26:14
2014-10-22 10:26:29 2014-10-22 10:26:14
2014-10-22 10:26:34 2014-10-22 10:26:14
2014-10-22 10:26:39 2014-10-22 10:26:14

回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
newkid 发表于 2014-10-22 22:27
做个试验看看:
CREATE OR REPLACE FUNCTION F_TEST(P_N NUMBER) RETURN DATE

实验不错
dbms_random.value()和sysdate同为不确定函数,但在select时,每一行的random都不相同,而sysdate却始终一致,这是为何?
回复

使用道具 举报

千问 | 2014-9-15 12:10:01 | 显示全部楼层
lastwinner 发表于 2014-10-23 00:10
实验不错
dbms_random.value()和sysdate同为不确定函数,但在select时,每一行的random都不相同,而sysd ...

我猜SQL函数和PLSQL函数的待遇是不同的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行