how pass french characters or extended characters to a stored procedure by odbc

From: Sylvain Dumont <sylvain_dumont_at_karat.com>
Date: Wed, 12 Jun 2002 15:08:21 -0400
Message-ID: <__MN8.456$SR3.191940_at_localhost>


error: ORA-01756: quoted string not properly terminated

une chaine entre apostrophhes ne se termine pas correctement

oracle Retrieving extended characters thru ODBC

PL/SQL procedure parameters

hi, i hope you can help to me.

I have a problem with french and german characters. i have a little stored procedure than return what i'm passing to him.

see these example: (the second one work fine on plsql)

first exemple:

  1. i created a new odbc dsn
  2. i'm going into sqlserver migration tab to choose Enable Exac Syntax.
  3. i'm open Winsql (this is a odbc tools) http://www.indus-soft.com/winsql/
  4. i'm write exec ksp_test 0,'HéLLO ORACLE'

i receive this error:

Error: ORA-01756: quoted string not properly terminated   (State:S1000, Native Code: 6DC)



I trying to changed too the NLS_LANG in the registry like FRENCH_CANADA.WE8ISO8859P1

     French_France.WE8ISO8859P1

but without any success..



i got the same problem with
oracle 9 database with utf8 characters set. oracle 8.1.7 with iso8859p1 characters set.

i trying all latest odbc driver from oracle website.

second exemple:

SQL> variable mytest refcursor;
SQL> exec ksp_test (0,'HéLLO ORACLE',:MYTEST);

PL/SQL procedure successfully completed. SQL> PRINT MYTEST; Your Database Value



HéLLO ORACLE

CREATE OR REPLACE PACKAGE KSP_PLSQLRSETPKG       AS
TYPE RCT1 IS REF CURSOR;
END;
;

CREATE OR REPLACE PROCEDURE KSP_TEST (  PATCH INT DEFAULT 0,
 PONC VARCHAR2,
RC1 IN OUT KSP_PLSQLRSETPkg.RCT1
)

AS
BEGIN
OPEN RC1 FOR
SELECT PONC "Your Database Value" FROM DUAL; FROM DUAL;
RETURN ;
END; Received on Wed Jun 12 2002 - 21:08:21 CEST

Original text of this message