BDE Migration to UniDAC with Sybase
Thanks Alex for all the support you hv provided so far.We almost finished migrating all delphi 6 (BDE) to delphi 10 with unidac..
Now we are facing slowness with unidac when we are interfacing delphi with our application which is developed in Uniface..We didnt changed anything in Uniface it is working too slow when we compare Delphi 6 with BDE.
Could please let us know how can we make it to perform well
Thanks!
Now we are facing slowness with unidac when we are interfacing delphi with our application which is developed in Uniface..We didnt changed anything in Uniface it is working too slow when we compare Delphi 6 with BDE.
Could please let us know how can we make it to perform well
Thanks!
Maybe you are trying to retrieve all the rows from the table (using stored procedure). You should filter the results using WHERE.sasdua wrote:When we connect directly to database,we didnt feel like too slow but when we are trying to connect from Uniface it is too slow..connection and storedproc are performing slow.
Regards,
Steve Faleiro
No for simple updates also taking so much time..which are not an issue earlier..stevel wrote:Maybe you are trying to retrieve all the rows from the table (using stored procedure). You should filter the results using WHERE.sasdua wrote:When we connect directly to database,we didnt feel like too slow but when we are trying to connect from Uniface it is too slow..connection and storedproc are performing slow.
Regards,
Steve Faleiro
We need sql.ini look up is it ready??AlexP wrote:Hello,
We will try to add support of sql.ini as soon as posible.
We will investigate the possibility of adding '@' to to names of procedure parameters, but that is hardly to happen in the nearest future.
Now you need to change parameters names manually
Can you please provide the SQL.ini look this month..we are going live in August.
Currently we have developed lockup ourselves but when we are using alias names of the server..when we pass the alias name to sever name of the Uni-connection it is not working.
We have encountered another issue,when we are passing Single Character('') in BDE to Sybase ..Sybase is treating has NULL
But here in our Uni Components Single Character is coming as Single Character only.Can you please let me how can i resolve this issue because we are using same procs for some other process also which is going to increase our tasks.
Currently we have developed lockup ourselves but when we are using alias names of the server..when we pass the alias name to sever name of the Uni-connection it is not working.
We have encountered another issue,when we are passing Single Character('') in BDE to Sybase ..Sybase is treating has NULL
But here in our Uni Components Single Character is coming as Single Character only.Can you please let me how can i resolve this issue because we are using same procs for some other process also which is going to increase our tasks.
Hello,
While using transactions control within MFUniconnection , it is behaving differently on Sybase 12.5 Client and with Sybase 15 Client.
In Sybase 15 Client , we were getting error message ODBC Driver Failed. Stored Proc xxx can be run only on unchained transaction mode.Set chained off before executing the procedure
So I gave the below command after starting the transaction
MFUniConnection.StartTransaction;
MFUniConnection.ExecSQL('set chained off',[]);
With Sybase 12.5 Client, we are getting the below error message
Set Chained command not allowed in Multistatement transaction.
Can you please let us know why this is a difference. We are trying to compile and execute the same buid with both Sybase 12.5 Client and Sybase 15 Client.
Thanks
AS
While using transactions control within MFUniconnection , it is behaving differently on Sybase 12.5 Client and with Sybase 15 Client.
In Sybase 15 Client , we were getting error message ODBC Driver Failed. Stored Proc xxx can be run only on unchained transaction mode.Set chained off before executing the procedure
So I gave the below command after starting the transaction
MFUniConnection.StartTransaction;
MFUniConnection.ExecSQL('set chained off',[]);
With Sybase 12.5 Client, we are getting the below error message
Set Chained command not allowed in Multistatement transaction.
Can you please let us know why this is a difference. We are trying to compile and execute the same buid with both Sybase 12.5 Client and Sybase 15 Client.
Thanks
AS
Hello,
The sql.ini support for Sybase will be available only in the new version of UniDAC that is going to be released in August. But we can send you a beta-version for testing.For this, please specify your license number, IDE version and e-mail to which we can send you this beta-version.
Different behaviour when working with procedures in a transaction is connected with the specifics of Sybase clients 12.5 and 15, and we cannot change it. But you can check the current client version yourself using the TUniConnection.ClientVersion property, and, if needed, set the Chained property to off. Also you can set the anymode mode for your procedures:
In this case behaviour on both clients will be the same (you will not have to set the Chained property to off on the 15 client).
I cannot reproduce the problem with "Single Character('')". Please send an example demonstrating it to alexp*devart*com
The sql.ini support for Sybase will be available only in the new version of UniDAC that is going to be released in August. But we can send you a beta-version for testing.For this, please specify your license number, IDE version and e-mail to which we can send you this beta-version.
Different behaviour when working with procedures in a transaction is connected with the specifics of Sybase clients 12.5 and 15, and we cannot change it. But you can check the current client version yourself using the TUniConnection.ClientVersion property, and, if needed, set the Chained property to off. Also you can set the anymode mode for your procedures:
Code: Select all
sp_procxmode sp_test, "anymode"I cannot reproduce the problem with "Single Character('')". Please send an example demonstrating it to alexp*devart*com
Hi Alex,
The Unistored proc is behaving strangely for some paramenters when it has temp tables created inside the procedures.
When you execute the procedure from backend you dont get any result set but with Sybase 12.5 Client , Unidac retreives some 75 records when I tried and displays them in Data Editor.
The same does not happen with Sybase 15 Client. Why Unidac retreives data using 12.5 Client we are not understanding
The Procedure has #temp tables and returns the data from that
Please help to check this issues
Thanks
AS
The Unistored proc is behaving strangely for some paramenters when it has temp tables created inside the procedures.
When you execute the procedure from backend you dont get any result set but with Sybase 12.5 Client , Unidac retreives some 75 records when I tried and displays them in Data Editor.
The same does not happen with Sybase 15 Client. Why Unidac retreives data using 12.5 Client we are not understanding
The Procedure has #temp tables and returns the data from that
Please help to check this issues
Thanks
AS