I need to change to perform a latin to unicode data conversion to create a file with UTF8. I found the unicode tool kit and I need to install UDF on my machine. However, the first part is to connect to Bteq and run
REPLACE FUNCTION udf_ascii2wide(
inputString VARCHAR(16000) CHARACTER SET LATIN
RETURNS VARCHAR(16000) CHARACTER SET UNICODE
EXTERNAL NAME 'CO!i18n502!c:\temp\udf_installation\udf_ascii2wide.o!F!udf_ascii2wide'
PARAMETER STYLE SQL;
But I get:
*** Failure 3524 The user does not have CREATE FUNCTION access to database
There are not other users and I've already run GRANT ALL ON dbc TO dbc but I still can't perform this action in Btq or grant myself the CREATE FUNCTION privilege.
What do I do?
Thanks in advance!
Do NOT create the UDF in database DBC. In fact, I don't think that's even possible. That's not what DBC is for. You should put it in your own database first to test it. User-installed UDFs that are intended for use by all go into SYSLIB: REPLACE FUNCTION SYSLIB.udf_ascii2wide (...).
If you set the session character set to UTF8, the LATIN data will be translated by the driver when it is exported.
Why do you think you need a UDF at all? Even if you did, I doubt it would be udf_ascii2wide (converting ASCII characters to their "wide" UNICODE variants).
I'm testing my company's product's ability to handle Teradata traffic and came across this feature as part of the new features in Teradata version 16.