我們有一個爲衆多客戶保存數據的數據庫。我們想讓客戶訪問數據庫,但只能訪問屬於他們的數據。解析select然後在where子句中插入「and Company.Name ='Acme'」讓我覺得很脆弱,因爲SQL選擇可能非常複雜,並且處理所有情況下的100%可能很困難。如何爲所有SQL選擇中的一列設置限制?
是否有某種方式做的當量(我知道這是不是有效的SQL):
SELECT * FROM *其中Company.Name ='Acme的和(passed_in_select)
可以嵌套一個完整的選擇作爲一個大選擇的內部部分。有沒有辦法做到上述?這樣對選擇就是一個非常簡單的限制,而且可能在100%的時間內工作。
您真的想要客戶訪問您的數據庫服務器,還是希望他們通過網站或應用程序訪問數據? – zedfoxus
什麼數據庫系統? –
@zedfoxus它將始終通過我們的報告系統,因此可以通過一個可以在傳入時更改選擇的應用程序。 –