Oracle创建表(如果不存在)

任何人都可以指出我仅在数据库中当前不存在表时才能使用的正确语法吗?

我目前正在编程Java GUI,以便连接到Oracle并在数据库上执行语句,我想知道是否将其实现为Java约束还是SQLPlus约束。

回答:

通常,检查表是否存在没有多大意义,因为不应在运行时创建对象,而应用程序应知道在安装时创建了哪些对象。如果这是安装的一部分,那么您应该知道过程中任何时候存在哪些对象,因此您无需检查表是否已存在。

但是,如果您确实需要,

  • 您可以尝试创建表并捕获`ORA-00955:现有对象已使用名称”异常。
  • 您可以查询USER_TABLES(或ALL_TABLESDBA_TABLES取决于是否要创建其他用户,并在数据库中的特权拥有的对象)来检查,看看表是否已经存在。
  • 如果不存在,您可以尝试在创建表之前删除该表并捕获“ ORA-00942:表或视图不存在”异常。

以上是 Oracle创建表(如果不存在) 的全部内容, 来源链接: utcz.com/qa/401574.html

回到顶部