Thread: How to use one function which can be accessed for all schemas
intmail01 <intmail01@gmail.com> writes: > I have several schemas in my database, I want to create just one function > to use with all these schema. > I create the function in a main schema then the trigger call the function > and error occurs : "No function matches the given name and argument types. > You might need to add explicit type casts." You can either explicitly schema-qualify the function call, or make sure that that main schema is always present in your search_path. regards, tom lane
Schema qualify your function and trigger names. Schema qualify everything, it’s good practice and doesn’t need to rely on search_path.
This error say exactly that.
CREATE FUNCTION test(…
CREATE FUNCTION myschema.test(
From: intmail01 <intmail01@gmail.com>
Sent: Tuesday, January 9, 2024 12:15 AM
To: pgsql-sql@lists.postgresql.org
Subject: [EXTERNAL] How to use one function which can be accessed for all schemas
Hi,
I have several schemas in my database, I want to create just one function to use with all these schema.
I create the function in a main schema then the trigger call the function and error occurs : "No function matches the given name and argument types. You might need to add explicit type casts."
How to use just one function which can be work amongst all shemas in the db ?
My objective is to reduce update of functions code just once not for many schemas. I dont want to duplicate my functions for each schema.
Thanks
Schema qualify your function and trigger names. Schema qualify everything, it’s good practice and doesn’t need to rely on search_path.
This error say exactly that.
CREATE FUNCTION test(…
CREATE FUNCTION myschema.test(
From: intmail01 <intmail01@gmail.com>
Sent: Tuesday, January 9, 2024 12:15 AM
To: pgsql-sql@lists.postgresql.org
Subject: [EXTERNAL] How to use one function which can be accessed for all schemas
Hi,
I have several schemas in my database, I want to create just one function to use with all these schema.
I create the function in a main schema then the trigger call the function and error occurs : "No function matches the given name and argument types. You might need to add explicit type casts."
How to use just one function which can be work amongst all shemas in the db ?
My objective is to reduce update of functions code just once not for many schemas. I dont want to duplicate my functions for each schema.
Thanks
Create function in public or catalog schema. This function will be visible to each schema and user