[英]Get All tables allowed to user with jdbc
我正在使用jdbc連接到數據庫,從數據庫中獲取所有模式和表的列表(我假設此時某些數據庫可能僅返回當前用戶可以查詢的表,而某些數據庫則返回表的完整列表)以及何時用戶嘗試查詢某些表,他會得到“權限不足”錯誤。 有沒有辦法只獲取表,用戶只能使用jdbc功能進行查詢? 無需向數據庫編寫特殊查詢。
現在我在看
DatabaseMetaData dbMeta = connection.getMetaData()
dbMeta.getTablePrivileges(null, null, null);
但是從查詢結果來看,尚不清楚用戶可以查詢哪些表。
目前,我正在使用SAP HANA數據庫,但通常它可以是任何數據庫,因此我正在尋找一些常用方法。
請看
您必須從ResultSet中獲取每一行,並查詢包含表名的列名TABLE_NAME和包含對每個表的訪問權的PRIVILEGE。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.