单选题 12.  在SQL Server 2008某数据库中,有表T(A,B)和S(A,C)。现在依次执行如下SQL命令:
    ①create role R1;
    ②create user U1;
    ③grant INSERT on T to R1;
    ④sp_addrolemember 'R1', 'U1';
    ⑤sp_addrolemember 'db_datareader', 'U1';
    ⑥deny SELECT on T to R1;
    则下列说法中,正确的是______。
【正确答案】 C
【答案解析】 sp_addrolemember语句的作用是为固定数据库角色添加成员。
   ①create role R1语句是添加用户角色R1;
   ②create user U1语句是添加用户U1;
   ③grant INSERT on T to R1语句是授权用户R1在表上T具有insert(插入)权限;
   ④sp_addrolemember 'R1', 'U1'是将用户U1添加到R1角色中;⑤sp_addrolemember 'db_datareader', 'U1'是将用户U1添加到db_datareader角色中,db_datareader的角色具有查询数据库中所有用户数据的角色;
   ⑥deny SELECT on T to R1作用是不允许角色R1在表上T上具有查询的功能。
   由步骤④、⑤和⑥知道,U1属于R1角色,而R1不能查询T1,故答案为C项。