我使用PostgreSQL作爲PostGIS和QGIS的GIS用途,但是我想我可能會在這裏找到更多的信息而不是gis.stackexchange.com,因爲我的問題與GIS沒有直接關係。PostgreSQL 9.5在視圖中更新虛擬列
我正在使用視圖來根據用戶的特定需求隨意地顯示數據,就像他們可以訪問數據庫中的數據一樣,但他們只需要它們。我在我的視圖中添加了一些規則,使它們在QGIS中「可更新」,並使它們直接由用戶「可操作」。
QGIS中的顯示是基於屬性的,但是由於不同的人有可能在同一時刻訪問相同的數據,他們可能希望根據他們的需要顯示和隱藏這些數據中的一部分(地圖打印一次)。所以,我正在尋找一種方式,讓可能有每個視圖特定的顯示,我想過乾脆在視圖定義中添加一個「虛擬」一欄,用例如布爾像這樣:
CREATE VIEW view1 AS
SELECT oid, column1, True as display from table1;
但我希望我的用戶能夠更改此列的值,以便簡單地在畫布上顯示或消除對象(使用考慮此參數的基於格式的樣式)。顯然,它不起作用,因爲更新會與視圖的定義相沖突。
有沒有人有任何想法如何實現這一目標?也許是物化的觀點(但我非常喜歡常規觀點的動態)?
謝謝。
爲什麼不使用真實列代替。在原表 –
@VaoTsun因爲我想要的屬性是特定於每個視圖,一個對象可以在許多視圖中(改變屬性一次就是在每個視圖中改變它)。 –