我正在开发rails 4/Ruby 2应用程序。我想拥有单独的生产和开发数据库以及应用程序文件夹。我正在使用架构/架构前缀来完成这项工作。到目前为止,它几乎有效。
我对SQL服务器的结构基本上是以下假设in=库存应用程序,pr=生产应用程序等。
- Web
- - in.tablename1
-- in.tablename2
- - pr.tablename1
- Web_dev
- - in.tablename1
- - in.tablename2
- - pr.tablename1
我有单独的应用程序文件夹作为
- inetpubwwwrootappsinventory
- inetpubwwwrootappsproduction
- inetpubwwwrootdevelopmentinventory
- inetpubwwwrootdevelopmentproduction
我开始认为对生产和开发数据库使用相同的架构前缀可能不是一个好主意。
如果我在生产和开发中使用 in. 的架构前缀是否重要,或者我应该设置类似 in. = 库存生产和 ind. = 库存开发。
可以在不同的数据库中使用相同的架构名称。 事实上,一种合理的用途是当您拥有同一数据库的开发和发布版本时。 然后,您的代码可以使用该名称访问不同的架构,而不必担心数据库的实际内容。
请注意,架构是在数据库中创建的。 因此,具有相同名称的两个架构彼此之间的关系与具有相同名称的两个表(在不同的数据库中)具有的关系相同。 也就是说,通用名称是巧合。