-
Character Set MISMATCH
Hi, all
Oracle 8.1.6.0.0 on NT,
There is a function:
CREATE OR REPLACE FUNCTION trax.long_to_char(towner in varchar2, tablen in varchar2, field in varchar2) return varchar2 IS
chr varchar2(4000);
BEGIN
select DATA_DEFAULT into chr from dba_tab_columns where owner = towner and table_name = tablen and column_name = field;
return trim(substr(chr,1,4000));
exception when others then
return 'Error: default value too long';
END;
/
There is a sql which use this function:
select column_name, long_to_char('TRAX', 'XTACTS0', column_name) DEFAULTD from dba_tab_columns where table_name = 'XTACTS0' and owner = 'TRAX' order by 1;
Problem:
When I run query above, I am getting error message:
ORA-06553: PLS-561: character set mismatchon on value for parameter 'FIELD'.
If I run the same query with the same function on Oracle 8.1.7 or 8.1.6 on Unix machine or on the other NT server it works fine. I have no idea what is wrong andI could not find anything on metalink. I do not have Oracle JVM installed on this server.
Any advices are very wellcome,
Thanks.
Best wishes!
Dmitri
-
Check database character set:
select value$ from sys.props$
where name = 'NLS_CHARACTERSET';
cheers.
It is better to ask and appear ignorant, than to remain silent and remain ignorant.
Oracle OCP DBA 9i,
C++, Java developer
-
Code:
select value$ from sys.props$where name = 'NLS_CHARACTERSET';
VALUE$
------------------------------------
UTF8
select * from v$nls_parameters;
PARAMETER VALUE
NLS_CHARACTERSET UTF8
NLS_NCHAR_CHARACTERSET UTF8
.....
select * from NLS_DATABASE_PARAMETERS
PARAMETER VALUE
NLS_CHARACTERSET UTF8
NLS_NCHAR_CHARACTERSET UTF8
NLS_RDBMS_VERSION 8.1.6.0.0
.....
Best wishes!
Dmitri
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|