Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.14, 5.15, 6.x
-
None
-
-
f19320748 (dev), b8f140b70 (6.5)
Description
The follwoing select statement executed wiith QSqlQuery:
"SELECT 'ÄÖÜäöüߧ' FROM dual"
returns thge result:
???????
After some debugging in the Qt source, it seems, unicode mode in the Qt SQL ODBC driver plugin isn't detected right. In QODBCDriverPrivate::checkUnicode() the member variable 'unicode' isn't set to true. If I set this variable with the debuger to true the query returns the right result: 'ÄÖÜäöüߧ'
My ODBC connection string:
DSN=TEST;DBQ=XE ;DBA=W;APA=T;EXC=F;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;BTD=F;BNF=F;BAM=IfAllSuccessful;NUM=NLS;DPM=F;MTS=T;MDI=F;CSR=F;FWC=T;FBS=64000;TLO=O;MLD=0;ODA=F;TSZ=8192;
I trie FWC (force wide character) with true or fals but this changes nothing.
The orcale settings:
NLS_LANGUAGE GERMAN
NLS_TERRITORY GERMANY
NLS_CURRENCY €
NLS_ISO_CURRENCY GERMANY
NLS_NUMERIC_CHARACTERS ,.
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD.MM.RR
NLS_DATE_LANGUAGE GERMAN
NLS_CHARACTERSET WE8MSWIN1252
NLS_SORT GERMAN
NLS_TIME_FORMAT HH24:MI:SSXFF
NLS_TIMESTAMP_FORMAT DD.MM.RR HH24:MI:SSXFF
NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR
NLS_TIMESTAMP_TZ_FORMAT DD.MM.RR HH24:MI:SSXFF TZR
NLS_DUAL_CURRENCY €
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
Attachments
Issue Links
- duplicates
-
QTBUG-96616 QODBC-DB2 Unicode support is not recognised
- Closed
For Gerrit Dashboard: QTBUG-102958 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
464875,8 | SQL/ODBC: add another check to detect unicode availability in driver | dev | qt/qtbase | Status: MERGED | +2 | 0 |
466238,2 | SQL/ODBC: add another check to detect unicode availability in driver | 6.5 | qt/qtbase | Status: MERGED | +2 | 0 |