Page 1 of 2

3.50.0.12 give a big Bug For Nvarchar2 in Chinese shows

Posted: Sun 17 Oct 2010 11:21
by daizhicun
for example:

Code: Select all

--1.create a tabel
create table dzc
( x varchar2(5),
y NVARCHAR2(5),
z varchar2(5 char))
--2.insert a data
insert into dzc values ('戴志','戴志存','戴志存')
then i exe:

select * from abc

in OcI/direct mode at Unidac

it shows :
Image

i pay much attation to this bug for a long time.
and i ask you that when you fixed this bug , let me test it for you .
and you tell me ,when you fixed it ,you let me test.
but you do not.

so you gvie bugs and bugs for this .

Posted: Sun 17 Oct 2010 11:42
by daizhicun
this bug from :
http://www.devart.com/forums/viewtopic. ... 9&start=45

btw. i hope that: direct mode can support server_name, not only SID;
ALL of tools for Oracle ,the all support two mode.
Image

sometimes ,sidserver_name ,but custom only give us server_name,
so we can connect oracle in direct mode;

I hope you pay attation to this function.

Posted: Sun 17 Oct 2010 12:00
by daizhicun
Image

Posted: Mon 18 Oct 2010 13:17
by bork
Hello

This bug was fixed in September. We are going to release the next build next week. But I want to send this fix to you and you can check this fix before it will including in the next build. If you don't receive this e-mail with the fix, please, let me know and I will send it again.

We have a few customers with Chinese encoding so any issues from you are very important for us.

Currently Direct mode doesn't support connection by Service Name and you can connect by SID only. We will investigate the possibility of adding this feature in one of the next builds/versions of UniDAC.

Posted: Tue 19 Oct 2010 01:30
by daizhicun
i get the fixed file.

and i test it just now ;

the show error has fixed.

but the old bug still exist.

in direct mode , i append a record by dbGrid.
i monitor the SQL:
----------------------------------
INSERT INTO DZC
(X, Y, Z)
VALUES
(:X, :Y, :Z)

:X(String[1],IN)='3'
:Y(String[1],IN)='3'
:Z(String[1],IN)='3'
----------------------------------
Error: ORA-01461: can bind a LONG value only for insert into a LONG column

Posted: Tue 19 Oct 2010 01:43
by daizhicun
Image

Posted: Tue 19 Oct 2010 02:02
by daizhicun
i am sorry ,i test it not build all project.

so the above error still is old version.


When i fixed new version after a get fixed files .
the show error still appear too.

the resion is :
nvarchar2(5) field in Delphi DataSet ,it length is 10 ,
but Unidac of the new version set it still 5.

Posted: Wed 20 Oct 2010 10:03
by bork
Hello

1. You have made several posts in this topic, and I cannot understand which issues are fixed and which are not.

2. Please notify me which UniDAC version do you use: with source code or not. Also I need to know which fix you used: you used fixed files or you installed fixed trial version.

I tried to insert any values to DBGrid by UniDAC and all works well without ORA-01461 error.

So please enumerate bugs which were found in fixed version and please notify me which fix you used: fixed files or you installed fixed trial version.

Posted: Wed 20 Oct 2010 15:13
by daizhicun
perhaps ,i not test ok with the fixed files that you email to me.
perhaps , the fixed files you send to me is not ok at all;

and, however;

it is true that :
the nearly version that you pubished (it is 3.5..12) has the length error in
nvarchar2 or varchar2(xx char).

i analyzer it . the reasion is :

in old version of UniDAC , if a field is nvarchar2(5) then
UniQuery.fields.DataSize=10 ; it is OK ,and all of other DataSet all do it like this . for example :ADO,BDE,DbExpress,AnyDAC;

but in Nearly version , if a field is nvarchar2(5) then
UniQuery.fields.DataSize=5; it is noly ok for english.

Posted: Wed 20 Oct 2010 15:17
by daizhicun
you said that :

I tried to insert any values to DBGrid by UniDAC and all works well without ORA-01461 error.


this error come from old version.

new version 's bug is bigger than this,because it can not show data ;

this is new bug:




Image

Posted: Thu 21 Oct 2010 09:20
by bork
Hello

I'm trying to explain to you, If you have professional UniDAC without source code, then fixed files will not help you. If you have professional UniDAC without source code, to test this fix you can use two ways:
1. Uninstall your current UniDAC version and install new trial version, that I have sent. Rebuild your project and test it.
2. Install new trial version, that I have sent on other or virtual PC and test it there.

I know about problem with NVARCHAR length in UniDAC 3.5.0.12, this bug was fixed in September. I sent you fixed files for testing them and we will release next build without this bugs.

I cannot reproduce your issue with DBGrid. Please try to reproduce it on the fixed trial version.

Posted: Fri 22 Oct 2010 03:46
by daizhicun
hello.
"I know about problem with NVARCHAR length in UniDAC 3.5.0.12, "

if you repair it . I think there is no bug in next version.
i do not need to test again.

we hope you publish version 3.5.0.13 soon.

Posted: Fri 22 Oct 2010 07:52
by bork
Hello

We are going to release the next build next week.

Posted: Fri 22 Oct 2010 10:40
by capelin
I Hope can Fix oracle connection service-name problems together.

Posted: Tue 21 Dec 2010 08:26
by bork
Hello

We added a connection in the Direct mode with using Service Name. It will be available in the next ODAC and UniDAC builds.