【发布时间】:2010-08-17 07:58:57
【问题描述】:
我正在练习SQL,突然我有这么多表。 组织它们的好方法是什么?有没有办法把它们放到不同的目录中?
或者是创建表空间as explained here的唯一选择?
【问题讨论】:
标签: database oracle sqlplus tablespace
我正在练习SQL,突然我有这么多表。 组织它们的好方法是什么?有没有办法把它们放到不同的目录中?
或者是创建表空间as explained here的唯一选择?
【问题讨论】:
标签: database oracle sqlplus tablespace
这取决于您所说的组织 - 表空间真正专注于组织存储。
对于组织表,将它们分组到不同的 SCHEMAS 可能更有用。 这更像是“命名空间”的概念——即 schema1.people 与 schema2.people 不同。
将操作数据和配置数据分离到不同的架构中通常是值得的。
如果您正在谈论在架构中组织表 - 在现实世界的应用程序中,在一个架构中拥有数百个表并不陌生 - 那么您真正能做的就是提出良好的命名约定。
有些地方用表名开头的前缀对表进行分组。就个人而言,我认为这会导致重复 - EMP_ADDRESSES 和 CUST_ADDRESSES 而不是正确链接的地址。
【讨论】:
这取决于您为什么要组织它们以及为什么(以及何时)创建它们。如果当您查看 user_tables 时该数字非常庞大,那么拆分为表空间将无济于事,因为您每次都需要指定要查询的表空间。而且没有真正的“目录”等价物。
如果您创建练习表只是为了试验小型项目,那么一种选择可能是为每个项目创建一个新的 Oracle 用户,并在该用户模式下创建所有相关表。然后,您只会在以该用户身份登录并处理该项目时看到相关表。这样做的好处是允许您重用表名,这可以简化您在做很多类似项目时的工作。
你可能还应该考虑整理一下,当你确定你已经完成了那一点实验时,放下桌子。
【讨论】:
它们都已经组织好了,因为它们在数据库中并且您有一个存储库。
【讨论】: