gpt4 book ai didi

oracle - 为什么截断表不会更改上次 DDL 日期?

转载 作者:行者123 更新时间:2023-12-02 00:03:13 25 4
gpt4 key购买 nike

当我运行以下代码时,我注意到Last DDL Date 没有更改。

 execute immediate 'truncate table my_table';

问题是什么?

提前致谢

最佳答案

truncate 表仅在表不为空时截断表。

如果表为空,那么当您执行truncate table 命令时,它不会被截断。

在此处查看演示:

SQL> select OBJECT_NAME, LAST_DDL_TIME from user_objects where OBJECT_NAME = 'CONTR';

OBJECT_NAME LAST_DDL_TIME
------------ --------------------
CONTR 13-nov-2019 11:45:53

SQL> truncate table CONTR; -- empty table

Table truncated.

SQL> select OBJECT_NAME, LAST_DDL_TIME from user_objects where OBJECT_NAME = 'CONTR';

OBJECT_NAME LAST_DDL_TIME
------------ --------------------
CONTR 13-nov-2019 11:45:53

SQL> INSERT INTO CONTR VALUES (1,1,1,1); -- filling values in the table

1 row created.

SQL> commit;

Commit complete.

SQL> truncate table CONTR;

Table truncated.

SQL> select OBJECT_NAME, LAST_DDL_TIME from user_objects where OBJECT_NAME = 'CONTR';

OBJECT_NAME LAST_DDL_TIME
------------ --------------------
CONTR 13-nov-2019 11:47:46

SQL> -- time is changed now

干杯!!

关于oracle - 为什么截断表不会更改上次 DDL 日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58831226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com