程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DBA的面試題也可以是這樣的

DBA的面試題也可以是這樣的

編輯:DB2教程

面試題:請問在SQL2000中怎麼區分登入,用戶,角色,並用例子舉例說明;

  再問:

(1)登入ID是不是就是用戶名(當我創建了一個登入, 我在點擊登入所對應的數據,實例中的用戶一欄看到登入ID與用戶名一致)

  (2)一個登入ID是不是只能對應一個用戶

  教科書答案:登錄 ID 僅能使您連接到 SQL Server 實例。特定數據庫內的權限由用戶帳戶控制。數據庫管理員將您的登錄帳戶映射到您有權訪問的任何數據庫中的用戶帳戶

  用戶如:sa

  角色如:public/db_owner/db_datareader/db_datawriter等

  只有給用戶賦予角色,該用戶才有相應的操作數據庫的權限

  如將public/db_owner角色賦給sa,則該用戶有對數據庫進行一切操作的權限

  角色:完成特定的、與服務器相關的管理任務所需的權限,一個用戶可以屬於多個角色。

  登錄:僅能使您連接到 SQL Server 實例。

  命題官的理解:

  登錄是sql實例級的

  用戶是數據庫級的

  角色有實例級和數據庫級兩種

  登錄決定你是否能訪問sql實例

  用戶與登錄對應, 確實某個登錄後, 它對那些數據庫有那些權限.

  角色是為了方便管理一類登錄或者用戶所具有的權限, 當某一類登錄或者用戶具有相同的權限時, 可以簡單地給予他們對應的角色即可.

  做個形象的比喻:

  sql實例就相當於一個公司.

  如果你要在公司工作自然就要成為公司的員工, 因此公司的員工就相當於登錄

  公司有不同的部門, 這相當於數據庫, 你要在某個部門做事, 必須把你分配到某個部門, 也就是在部門的名單中要有你, 這個部門的名單就相當於用戶. 名單必須對應公司的某個員工.

  但你一個人是可以在多個部門工作的

  因此, 一個登錄可以對應多個數據庫的不同用戶.

  同樣, 一個員工在一個部門的名單中只可能出現一次

  因此, 一個登錄在同一數據庫中, 只可能對應一個用戶

  為了方便定義每個員工應該做些什麼, 應該承擔什麼職責, 公司會定義職位, 我個職位對應的, 在數據庫中就叫角色.

  因為有的職位是公司層面的, 比如懂事長, 他什麼都可以管

  因此, 有sql實例級的角色

  也可以具體地為每個部位定義職位, 不同部門的同一名稱的職位它的具體內容可以不同.

  因此,對應於sql而言, 它又有數據庫級的角色

  某個員工是某個職位, 則具有該職位對應的權限與責任

  因此, 對於sql而言, 某個登錄或者用戶被授予某個或者某些角色, 它就具有對應的權限.

  不同職位, 在不同時期, 可以由不人擔任, 換人只需要取消和授予對應人員的職位就可以了. 不用改職位定義.

  因此, 對於sql而言, 可以根據需要取消和授予某個登錄或者用戶的角色.

  (這是管理方便性需要, 你完全可以不理會角色, 自己為用戶或者登錄指定權限)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved