Name is required.
Email address is required.
Invalid email address
Answer is required.
Exceeding max length of 5KB

Encryption Function


I want to apply encrytion in table column using matillion component

Tried this function "aes_encrypt(column)" in 'calculator','sql script' components but return error but In Redshift aginity its works fine.please advice?


3 Community Answers

Matillion Agent  

David Lipowitz —

Hi Mathan,

Thanks for the question. Can you let us know what the error was?

Best Regards,

Mathan Selvaraj —

Hi David,

The component replies error:

"zxJDBC.Error: ERROR: function aes_encrypt(character varying) does not exist
Hint: No function matches the given name and argument types. You may need to add explicit type casts."

also tried with python script same error returned.Once again i remember its work in aginity Redshift.



Matillion Agent  

Arawan Gajajiva —

Hi David,

AWS Redshift does not by default have an aes_encrypt() function. It is possible that in your Aginity environment, a User Defined Function was used to create the aes_encrypt() function that you are referencing. You can confirm if the aes_encrypt() function exists as a UDF in your Redshift instance by querying the pg_proc system catalog table in Redshift. Something like this:

select * from pg_proc where proname ilike '%<name_here>%'

Once confirmed that the aes_encrypt user defined function exists, if you are accessing the same Redshift instance that you are using with Aginity, can you confirm that you are using the same Schema and Database? If you are connecting to a different Schema or Database, then you either need to create the UDF in the same schema that you are using with Matillion ETL or you will need to fully qualify the database and schema of the UDF in the Calculator component.

Hope this helps!

Post Your Community Answer

To add an answer please login