PostgreSQL 9.6.0 �ֲ�
| |||
---|---|---|---|
��һҳ | ��һ�� | �� 44. PL/Python - Python �������� | ��һҳ |
plpyģ��Ҳ�ṩ�˺���
plpy.debug(msg, **kwargs) |
plpy.log(msg, **kwargs) |
plpy.info(msg, **kwargs) |
plpy.notice(msg, **kwargs) |
plpy.warning(msg, **kwargs) |
plpy.error(msg, **kwargs) |
plpy.fatal(msg, **kwargs) |
plpy.error
��plpy.fatal
ʵ���ϻ����һ�� Python �쳣�����û����׽�������ᱻ���������ò�ѯ�е��µ�ǰ���������������ֹ��raise plpy.Error(msg)��raise plpy.Fatal(msg)�ֱ��Ч�ڵ���plpy.error(msg)��plpy.fatal(msg)������raise��ʽ���������ݹؼ��ʲ�������������ֻ���ɲ�ͬ���ȼ�����Ϣ��һ���ض����ȼ�����Ϣ�DZ�������ͻ��ˡ�д���������־�������߶�������log_min_messages��client_min_messages���ñ������ơ������ 19 ����
msg����������λһ��λ�ò�����Ϊ�������ݣ����Ը�������һ��λ�ò���������������£� λ�ò����γɵ�Ԫ����ַ������ォ���ɱ�����ͻ��˵���Ϣ��
���� keyword-only �����ᱻ���ܣ�
detail |
hint |
sqlstate |
schema_name |
table_name |
column_name |
datatype_name |
constraint_name |
CREATE FUNCTION raise_custom_exception() RETURNS void AS $$ plpy.error("custom exception message", detail="some info about exception", hint="hint for users") $$ LANGUAGE plpythonu; =# SELECT raise_custom_exception(); ERROR: plpy.Error: custom exception message DETAIL: some info about exception HINT: hint for users CONTEXT: Traceback (most recent call last): PL/Python function "raise_custom_exception", line 4, in <module> hint="hint for users") PL/Python function "raise_custom_exception"
��һ�鹤�ߺ�����plpy.quote_literal(string)��plpy.quote_nullable(string)�Լ�plpy.quote_ident(string)�����ǵ�Ч���� 9.4 �����������ڽ����ú������ڹ�����ʱ��ѯʱ�����������ó����� 41-1�ж�̬ SQL �� PL/Python ��Ч���ǣ�
plpy.execute("UPDATE tbl SET %s = %s WHERE key = %s" % ( plpy.quote_ident(colname), plpy.quote_nullable(newvalue), plpy.quote_literal(keyvalue)))
��һҳ | ��ʼҳ | ��һҳ |
��ʽ������ | ��һ�� | �������� |