我在模式下創建了一些表。目前,我可以使用以下模式訪問表格:如何在模式中訪問表而不必使用模式前綴(Postgres + PHP)?
select * from myschema.mytable
我在尋找避免使用模式名稱的方法。像這樣:
select * from mytable
但我沒有找到答案。
你能幫忙嗎?由於
我在模式下創建了一些表。目前,我可以使用以下模式訪問表格:如何在模式中訪問表而不必使用模式前綴(Postgres + PHP)?
select * from myschema.mytable
我在尋找避免使用模式名稱的方法。像這樣:
select * from mytable
但我沒有找到答案。
你能幫忙嗎?由於
模式搜索路徑將用於這方面的工作:
要看到當前值:
SHOW search_path;
要更改值(追加新的模式):
SET search_path TO myschema,public;
道歉,但我不是很清楚。我如何從PHP內部做到這一點? – mrjayviper 2014-11-04 03:21:44
@mrjayviper只需在PHP下運行'SET'語句(在其他查詢之前)。請注意,您想要訪問的模式不一定是第一個 - 搜索路徑中的第一個模式只控制在哪裏創建新表(如果在單獨的模式中有多個具有相同名稱的表) – pozs 2014-11-04 08:19:55
出於好奇 - 爲什麼要避免模式名稱? – 2014-11-04 00:48:57
您可以使用SET搜索路徑;如SET search_path to myschema,public;這會影響整個會議 – okaram 2014-11-04 00:50:12