Sybase

如何查看為特定使用者名或登錄名配置預設數據庫的位置?

  • September 17, 2017

一旦我連接到數據庫伺服器而不指定特定數據庫,例如:

sqsh -Usomeuser -Ssomeserver

……我可以做一個:

select db_name();

…查看該使用者的預設數據庫。但是這些資訊保存在哪里和/或如何查看為每個使用者名或登錄名配置的預設數據庫?

執行以下程式碼顯示 ASE 上的預設數據庫:

SELECT sl.name
   , sl.dbname
FROM syslogins sl
ORDER BY sl.name;

關於預設數據庫:

  • 每次登錄的預設數據庫保存在主數據庫系統表syslogins列中dbname
  • 此列可按public組選擇(每個人都在此組中),即選擇權限授予公共
  • 另一種方法是執行系統儲存過程sp_displaylogin <loginname>以顯示預設數據庫

您可以exec sp_helprotect syslogins在主數據庫的上下文中檢查訪問權限。

引用自:https://dba.stackexchange.com/questions/161519