0

我的公司有一些應用程序,我們在我們構建的網站中部署。最近,一個非常古老的應用程序需要被包含在一個新的應用程序的旁邊,並且存在衝突,這兩個應用程序都需要使用重複的表名。postgresql重複的表名稱最佳實踐

我們現在是在更新一箇舊的應用程序的過程中,會有一些數據庫更新。我很好奇人們認爲最佳做法(或者你是如何做的),以幫助確保這些名稱衝突不會發生。

我看了架構的,但不知道如果多數民衆贊成我們要採取正確的道路。作爲documentation prescribes,我不想爲「線」的特定模式的名稱爲應用程序,如果我添加架構對用戶搜索路徑它怎麼會知道我指的是如果兩個模式的具有相同的表名的表。雖然,也許我正在讀這個。

任何見解或智慧的話,將不勝感激!

回答

1

Postgres有命名空間是肯定的處理之類的事情:)

只要創建舊數據庫的新的命名空間的最有效的方法,你就大功告成了。大多數PHP/MySQL解決方案解決這個問題的方式(每個應用都有特定的前綴)也是一種選擇,但不是我推薦的方法之一。

[編輯]具體來說,除了更改search_path之外,您可以調用您的表格,如the_namespace.tablename。其餘的,如果你不添加命名空間,search_path將決定你的命名空間。

+3

架構是一個命名空間的名字:CREATE SCHEMA the_namespace; – 2010-03-16 19:40:47