Sql 从数据库脚本中删除表空间引用
我对SQL比较陌生,只在需要的时候才接触它。我对此做了一些研究,但成效有限。我需要从代码中删除表空间引用。数据库中已存在默认表空间的设置。顺便说一下,这是一个Oracle数据库 如果我有以下代码行:Sql 从数据库脚本中删除表空间引用,sql,database,oracle,Sql,Database,Oracle,我对SQL比较陌生,只在需要的时候才接触它。我对此做了一些研究,但成效有限。我需要从代码中删除表空间引用。数据库中已存在默认表空间的设置。顺便说一下,这是一个Oracle数据库 如果我有以下代码行: EXECUTE IMMEDIATE 'CREATE TABLE RAND_CATEGORY( -------- insert random vars --------------- CONSTRAINT RAND_CATEGORY PRIMARY KEY(cat_id,ver_num) USING
EXECUTE IMMEDIATE 'CREATE TABLE RAND_CATEGORY(
-------- insert random vars ---------------
CONSTRAINT RAND_CATEGORY PRIMARY KEY(cat_id,ver_num)
USING INDEX TABLESPACE VG_NDX ENABLE
)TABLESPACE VG_DATA';
以下是我目前掌握的情况:
EXECUTE IMMEDIATE 'CREATE TABLE RAND_CATEGORY(
-------- insert random vars ---------------
CONSTRAINT RAND_CATEGORY PRIMARY KEY(cat_id,ver_num)
USING INDEX TABLESPACE VG_NDX ENABLE
)';
我的问题是,我是否应该删除整行:
USING INDEX TABLESPACE VG_NDX ENABLE
或者我应该删除“表空间VG_NDX”并将其保留为:
USING INDEX ENABLE
请记住,我是新手,我只是需要帮助。在过去的两周里,我一直在学习SQL,表空间对我来说有点古怪。提前谢谢!:D使用索引的
子句允许对与约束相关的索引创建进行更多控制,请参阅。
在您的例子中,表空间
存储子句
如果要让Oracle使用默认表空间,可以完全删除USING INDEX
子句,而不使用ENABLE
尽管在CREATE表中,
主键约束关联的索引是自动启用的(除非我遗漏了什么),所以我看不到保持ENABLE
的任何意义,USING index
子句允许对约束关联的索引创建有更多的控制,请参阅。
在您的例子中,表空间
存储子句
如果要让Oracle使用默认表空间,可以完全删除USING INDEX
子句,而不使用ENABLE
尽管在CREATE表中,主键约束关联索引会自动启用(除非我遗漏了什么),所以我看不到保持启用的任何意义
它很好地概述了什么是表空间,应该解决这个问题。阅读本文档:
它很好地概述了什么是表空间,应该可以解决这个问题。谢谢!最后,我问我们的DBA,他说要把所有东西都拿出来,但要离开。我不确定原因。它可能在默认情况下已经启用了,但也许他们只是想让程序员更容易理解正在发生的事情。我真的不确定这个理由。因此,我将使用索引表空间VG_NDX ENABLE'更改为启用启用不是使用索引的的一部分。启用
和使用索引
都是约束状态的一部分,如所示。查看铁路图中的constraint\u state
可以看到约束的ENABLE
选项是独立的<代码>使用索引子句
允许自定义约束创建或使用的索引@minhaz1:你不应该接受不正确的答案~@ShannonSeverance:谢谢你的更正,尽管我仍然不明白保持启用的意义。我在文档中找不到它,但测试清楚地表明,在createtable
语句中声明主键约束在默认情况下可以启用它。要么是数据库设置,要么是固定的,无论如何,为什么在这种情况下指定ENABLE
?我编辑了响应以符合实际情况,现在应该是正确的。谢谢!最后,我问我们的DBA,他说要把所有东西都拿出来,但要离开。我不确定原因。它可能在默认情况下已经启用了,但也许他们只是想让程序员更容易理解正在发生的事情。我真的不确定这个理由。因此,我将使用索引表空间VG_NDX ENABLE'更改为启用启用不是使用索引的的一部分。启用
和使用索引
都是约束状态的一部分,如所示。查看铁路图中的constraint\u state
可以看到约束的ENABLE
选项是独立的<代码>使用索引子句
允许自定义约束创建或使用的索引@minhaz1:你不应该接受不正确的答案~@ShannonSeverance:谢谢你的更正,尽管我仍然不明白保持启用的意义。我在文档中找不到它,但测试清楚地表明,在createtable
语句中声明主键约束在默认情况下可以启用它。要么是数据库设置,要么是固定的,无论如何,为什么在这种情况下指定ENABLE
?我编辑了响应以符合实际情况,现在应该是正确的。