Version 6: Question about SQLType value.
Version 6: Question about SQLType value.
Hi Folks!
With version 6, SQLType is being set to Unknown in TOCICommand.Finish. Is this intended? With version 5, I would run a command and then be able to check what type of command was run to give some feedback to the user and perhaps do other processing depending on the command type.
Thanks for any help!
-Mark Ford
With version 6, SQLType is being set to Unknown in TOCICommand.Finish. Is this intended? With version 5, I would run a command and then be able to check what type of command was run to give some feedback to the user and perhaps do other processing depending on the command type.
Thanks for any help!
-Mark Ford
I've been looking into this today and I'm not sure I understand why the change was made. SQLType is being reset when the Oracle cursor is closed (which may happen at different times depending on various options.) Is there any reason why that is necessary?
It seems like SQLType should report the statement type that was run regardless of whether the Oracle cursor has been closed. This means that if we want to know the SQLType, we need to prepare the statement (which adds a server round trip) and keeps the cursor open even if autoclose is true. I'm not sure I see the downside to leaving the SQLType set to the correct value.
If I do something like:
OQuery.OptionsDS.AutoPrepare := False;
OQuery.OptionsDS.AutoClose := True;
OQuery.SQL.Text := 'some non-select statement or select where recordcount < Fetchrows';
OQuery.Execute();
// SQLType has been set and then reset in a single call, so we can't find out what it was.
Thanks for any help or insight!
-Mark
It seems like SQLType should report the statement type that was run regardless of whether the Oracle cursor has been closed. This means that if we want to know the SQLType, we need to prepare the statement (which adds a server round trip) and keeps the cursor open even if autoclose is true. I'm not sure I see the downside to leaving the SQLType set to the correct value.
If I do something like:
OQuery.OptionsDS.AutoPrepare := False;
OQuery.OptionsDS.AutoClose := True;
OQuery.SQL.Text := 'some non-select statement or select where recordcount < Fetchrows';
OQuery.Execute();
// SQLType has been set and then reset in a single call, so we can't find out what it was.
Thanks for any help or insight!
-Mark
In which version will this be addressed? We are on version 6.7 and are seeing this as well. I don't see this listed as addressed when looking at the release history here... http://www.devart.com/odac/history.html
Thanks,
Michael
Thanks,
Michael
We have the same mapping for CREATE TABLE to 1 and, although I no longer have Delphi 7 and ODAC 6.25 installed, I have the old executable which takes the same SQLType parameter as input to the same function and it returns appropriate messages for many dozens of statements. This is largely non-functional in the latest ODAC.
-
gregoryliss
- Posts: 13
- Joined: Mon 19 Dec 2005 16:31
Still seeing this
Updated to v6.8 and still seeing this problem.