PostgreSQL 8.0.0 �����ĵ���PostgreSQL �й� ������ | ||||
---|---|---|---|---|
Prev | Fast Backward | Chapter 33. ����ϵͳ | Fast Forward | Next |
���� PostgreSQL ����ϵͳ�Բ�ѯ����д�� �dz�ʼ��ѯָ����������/��ͼ�����ʡ� ʹ�ø��¹����ʱ������ܰ����Ա��дȨ�ޡ�
��д����ӵ��һ�������������ߡ� ��ϵ�������ͼ�����������Զ���Ϊ��д�����ȱʡ�����ߡ� PostgreSQL ����ϵͳ�ı�ȱʡ�ķ��ʿ���ϵͳ�����ԡ� ������ʹ�õĹ�ϵ�ڣ�������дʱҪ�Զ�����������߽���Ȩ��飬 �����Ǽ��������û�����ζ��һ���û�ֻ��Ҫ�����IJ�ѯ����ȷָ���ı�/��ͼӵ�������Ȩ�Ϳɽ��в�����
���磺ij�û���һ���绰�����б�����һЩ��˽�˵ģ� �����һЩ�ǰ칫��������Ҫ�ġ������������淽����������ѯ����
CREATE TABLE phone_data (person text, phone text, private boolean); CREATE VIEW phone_number AS SELECT person, phone FROM phone_data WHERE NOT private; GRANT SELECT ON phone_number TO secretary;
���������⣨�������ݿⳬ���û���û���˿��Է��� phone_data �� ����ΪGRANT��������Դ� phone_number ��ͼ������SELECT�� ����ϵͳ���Ѵ� phone_number ���SELECT��дΪ�� phone_data ���SELECT���������ʸ��������� ֻ��private����Ϊ�ٵļ�¼�ſ���ѡ������Ϊ�û��� phone_number �������ߣ� ���Ҳ�ǹ���������ߣ���������Ҫ������� phone_data �Ķ����ʵ�Ȩ�ޣ� �������ѯ�DZ�����ġ�ͬʱҲҪ������ phone_number ��Ȩ�ޣ� �����Ƕ�һ��������Ȩ���û����м��ģ����Գ����û��Լ���������û���˿���ʹ������
Ȩ����ǰ������������еġ� ���Դ�ʱ��������Ψһ��һ�����Կ��������绰������ˡ� ���������������һ����ͼ���Ҹ������ͼ����Ȩ�ޡ� �������κ��˶�����ͨ���������ͼ���� phone_number ���ݡ� ���鲻�����������Ǵ���һ��ֱ�ӷ��� phone_data ����ͼ��ʵ�������ǿ��Եģ���û���κ����ã� ��Ϊÿ�����ʶ�����ͨ����Ȩ�������߳����� �����û��ܿ����ʶ�������鿪�������� phone_number ��ͼ�� ��������REVOKE�����أ����ķ���Ȩ�ޡ� ���������ж�������ͼ�ķ������Ͼ�ʧЧ�ˡ�
��Щ�˻���Ϊ������������ļ����һ����ȫ©��������ʵ�ϲ��ǡ� ���������������Ч�� ���齫���뽨��һ���� phone_number ����ͬ�ֶεı���ÿ��һ�εĿ������ݽ�ȥ�� ��ô�������Լ���������������Ը�����������κ��˷��ʵ�Ȩ���� һ��GRANT��ζ�� "��������"�����ij�������ε���������������飬 ����������Ƿ��REVOKE�ˡ�
�������ͬ���������ڸ��¹�������һ�µ������ �������ݿ���ı�������߿��ѣ����裩shoelace��ͼ ��Ȩ�� SELECT��INSERT��UPDATE �� DELETE ���������ˡ� ���� shoelace ֻ�� SELECT Ȩ�ޡ� д��־��¼�Ĺ�������action����Ȼ���Գɹ���ִ�С� ���������û����Կ�����־��¼���������ܴ���α��¼�� ������Ҳ���ܶ����м�¼�����Ļ�ɾ����