ORA-01756 using Q-quote

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
mstaszew
Posts: 16
Joined: Tue 10 Feb 2009 15:04

ORA-01756 using Q-quote

Post by mstaszew » Wed 21 Mar 2018 19:05

Hi there,

Using ODAC 10.1.3.0 with Delphi 10.1.

OraCall.OCIUnicode := True;
Session.Options.UseUnicode := True;

Using TSmartQuery execute the following...

Code: Select all

DECLARE
    s   VARCHAR2 (32767);
BEGIN
    s := s || q'[Test '[[:alpha:]]+' Test]';
END;
This works well in the previous version of ODAC we used (10.0.x) but no longer works. If I change the Q-quote to be...

Code: Select all

DECLARE
    s   VARCHAR2 (32767);
BEGIN
    s := s || q'<Test '[[:alpha:]]+' Test>';
END;
...then it works. If the string end delimiter appears in the string followed by a single quote (but not immediately followed) then it's failing incorrectly. If I do not enable the Unicode options then it works as expected.

I opened a support ticket for this, but then remembered my registered email in the support system is no longer valid so please ignore the support ticket/double post.

Thanks,
Michael

MaximG
Devart Team
Posts: 1093
Joined: Mon 06 Jul 2015 11:34

Re: ORA-01756 using Q-quote

Post by MaximG » Thu 22 Mar 2018 10:50

We tested ODAC behavior according to your description and found no problems. Perhaps the issue occurs with specific connection settings. You are welcome, compose and send us a small full sample, execution of which causes the issue. In addition, provide details about the used Oracle server - its version and NLS parameters

mstaszew
Posts: 16
Joined: Tue 10 Feb 2009 15:04

Re: ORA-01756 using Q-quote

Post by mstaszew » Thu 22 Mar 2018 14:07

Thank you. I don't see how to attach to forum post so I've submitted through support portal.

Thanks,
Michael

MaximG
Devart Team
Posts: 1093
Joined: Mon 06 Jul 2015 11:34

Re: ORA-01756 using Q-quote

Post by MaximG » Mon 26 Mar 2018 15:03

Thank you for the information. We have reproduced the issue and will investigate its origin. We will inform you about the results shortly.

Post Reply