1. 删除oracle表中的所有数据而不删除表:

语法:

  

TRUNCATE TABLE table_name;

使用这条语句只是删除表中的全部数据,不是删除表,这种方式也叫做截断表,这种方式比使用delete删除数据的速度要快很多;

SQL> desc new_userinfo;
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER(6)
 USERNAME                                           VARCHAR2(20)
 PASSWORD                                           NUMBER(6)
 NEW_EMAIL                                          VARCHAR2(30)
 REGDATE                                            DATE

SQL> truncate table new_userinfo;

表被截断。

SQL> desc new_userinfo
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER(6)
 USERNAME                                           VARCHAR2(20)
 PASSWORD                                           NUMBER(6)
 NEW_EMAIL                                          VARCHAR2(30)
 REGDATE                                            DATE

SQL>

只是删除表中的数据,而不是删除表;

 

2. 直接删除表:

语法:

  

DROP TABLE table_name;
SQL> desc new_userinfo
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER(6)
 USERNAME                                           VARCHAR2(20)
 PASSWORD                                           NUMBER(6)
 NEW_EMAIL                                          VARCHAR2(30)
 REGDATE                                            DATE

SQL> drop table new_userinfo;

表已删除。

SQL> desc new_userinfo;
ERROR:
ORA-04043: 对象 new_userinfo 不存在


SQL>

 

相关文章:

  • 2021-09-24
  • 2021-11-07
  • 2021-11-30
  • 2021-12-26
  • 2022-12-23
  • 2021-09-26
猜你喜欢
  • 2021-08-13
  • 2021-05-17
  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
  • 2021-11-30
  • 2021-06-24
相关资源
相似解决方案