PostgreSQL 8.0.0 �����ĵ���PostgreSQL �й� ������ | ||||
---|---|---|---|---|
Prev | Fast Backward | Fast Forward | Next |
PREPARE ����һ�������õIJ�ѯ�� һ�������õIJ�ѯ�Ƿ������˵Ķ����������Ż����ܡ� ��ִ�� PREPARE ����ʱ��ָ���IJ�ѯ����������д�Լ��滮�� ����� EXECUTE ����ʱ�� �����õIJ�ѯ��ֻ��Ҫִ���ˡ���ˣ���������д���Լ��滮�ζ�ִֻ��һ�Σ�������ÿ�β�ѯִ�е�ʱ��Ҫִ��һ�Ρ�
���õIJ�ѯ���Խ��ܲ���������ִ�е�ʱ���滻����ѯ�е���ֵ�� Ҫ��һ�����õIJ�ѯ����������������Ҫ�� PREPARE ��������һ���������͵��б��ڲ�ѯ������������λ����������Щ������ ���� $1��$2���ȡ� ��ִ�в�ѯ��ʱ���� EXECUTE �����Ϊ��Щ��������ʵ�ʵ���ֵ�� �ο� EXECUTE ��ȡ������Ϣ��
���õIJ�ѯ���ڱ��ش洢�ģ��ڵ�ǰ����������ֻ���ڵ�ǰ���ݿ�Ự�Ĺ����д��ڡ� ����ͻ����˳�����ô���õIJ�ѯ�ͻᱻ������������DZ����ڱ�����ʹ��֮ǰ���´����� ��Ҳ��ζ��һ�����õIJ�ѯ���ܱ����ͬʱ�����ݿ�ͻ���ʹ�ã� ���ǣ�ÿ���ͻ��˿��Դ��������Լ��������õIJ�ѯ��ʹ�á������õ��������� DEALLOCATE �����ֹ������
���һ���Ự������ִ�д������ƵIJ�ѯ����ô�����õIJ�ѯ���Ի������ȵ��������ơ� �����ѯ�dz����ӣ���Ҫ���ӵĹ滮������д����ô���ܲ�ཫ�dz����ԡ� ���磬�����ѯ�����������ӣ������ж��ֹ���Ҫ��Ӧ�á������ѯ�Ĺ滮����д��Լ� ��ִ�����������൱����ô�����õIJ�ѯ���������ƾͲ���ô���ԡ�
��������ض��������ò�ѯ���������֡���������һ���Ự����Ψһ�ģ� ��������ִ�л���ɾ��һ��ǰ�����õIJ�ѯ��
�����ò�ѯ��ij���������������͡�Ҫ�������ò�ѯ�ڲ��������������ʹ�� $1��$2���ȡ�
�κ� SELECT��INSERT��UPDATE�� ���� DELETE ��ѯ��
��һЩ����£�PostgreSQL Ϊһ�������õIJ�ѯ���ɵIJ�ѯ�滮���ܻ����簴����ͨ�����ύ��ִ�еIJ�ѯ���ɵĹ滮�á� ������Ϊ�ò�ѯ�ڱ��滮��ʱ��Ҳ���Ż�����ͼ�ж����Ų�ѯ�滮��ʱ�� �ڲ�ѯ���������κβ�����ʵ����ֵ�������ɼ��� PostgreSQL �ڱ����ռ����ݷֲ���ͳ�ƣ� ���ҿ������ò�ѯ�еij������²�ִ�в�ѯ�Ŀ��ܽ���� ��Ϊ��Щ�����������ִ������IJ�ѯ�Ĺ滮��ʱ���ɵã� ���ԣ�ѡ�����ù滮�����Ǵκõġ� Ҫ��� PostgreSQL Ϊ�����õIJ�ѯѡȡ�IJ�ѯ�ƻ��� ʹ�� EXPLAIN��
�йز�ѯ�滮�� PostgreSQL Ϊ��ѯ�Ż���Ŀ���ռ���ͳ�Ƶĸ�����Ϣ�� ���� ANALYZE �ĵ���
Ϊһ�� INSERT ��䴴��һ�����ò�ѯȻ��ִ������
PREPARE fooplan (int, text, bool, numeric) AS INSERT INTO foo VALUES($1, $2, $3, $4); EXECUTE fooplan(1, 'Hunter Valley', 't', 200.00);
Ϊһ�� SELECT ��䴴��һ��ִ�кõIJ�ѯȻ��ִ������
PREPARE usrrptplan (int, date) AS SELECT * FROM users u, logs l WHERE u.usrid=$1 AND u.usrid=l.usrid AND l.date = $2; EXECUTE usrrptplan(1, current_date);