可使用特定列的名称来对 Select、Update 和 References 特权进行限定。通过命名特定的列,就可以授予对表的特定访问权。可以允许用户只查看特定的列、只更新特定的列或只对特定的列施加引用约束。
CREATE TABLE hr_data ( emp_key INTEGER, emp_name CHAR(40), hire_date DATE, dept_num SMALLINT, user-id CHAR(18), salary DECIMAL(8,2) performance_level CHAR(1), performance_notes TEXT )
REVOKE ALL ON hr_data FROM PUBLIC
GRANT SELECT ON hr_data TO harold_r
GRANT UPDATE (performance_level, performance_notes) ON hr_data TO wallace_s, margot_t
GRANT UPDATE (salary) ON hr_data to willard_b
GRANT UPDATE (emp_key, emp_name, hire_date, dept_num) ON hr_data TO marvin_t
GRANT UPDATE (user_id) ON hr_data TO eudora_b
GRANT SELECT (emp_key, emp_name, hire_date, dept_num, user-id) ON hr_data TO george_b, john_s
SELECT COUNT(*) FROM hr_data WHERE dept_num IN (32,33,34)
SELECT performance_level FROM hr_data WHERE emp_name LIKE '*Smythe'