Hello. Test code was written. I could say that on the MS SQL queries without parameters works much faster than via sp_executesql.
I see some problems with converting parameter values to the string. Could it be discussed here? Parameter values could be embedded to the command text for the Input parameters only (its not a big problem - just FYI). The problem is: Does all servers accept "NULL" in the query string as null value? DateTime, string, numeric variables should be correctly corrected to the string representation for each server. Does iBATIS contain such rules now? Somewhere in the session parameters or elsewhere? Should convertion rules be as additional options for the sqlmap.config "database" element? May be additional attribute should be added for each statement - should be parameters embedded or not? Or a global option for the database? Thank you. > -----Original Message----- > From: Gilles Bayon [mailto:[EMAIL PROTECTED] > Sent: Saturday, January 01, 2005 10:32 PM > To: ibatis-user-cs@incubator.apache.org > Subject: RE: MS SQL slow query performance > > Fine idea, I have created a JIRA issue of your improvement. > > Happy New Year. > -Gilles > > -----Message d'origine----- > De : Alexey Boroday [mailto:[EMAIL PROTECTED] > Envoyé : vendredi 31 décembre 2004 08:27 > À : ibatis-user-cs@incubator.apache.org > Objet : RE: MS SQL slow query performance > > Hello > > I see that SqlCommand executes commands with parameters with > sp_execsql. > But it is too slow. > My proposition is parse CommandText and replace parameter names with > parameter values inside CommandText e.g. > > Lets say we have command > > delete from Table1 where id = @id > > so this cammand will be passed to the server as > > exec sp_executesql N'delete from Table1 where id = @P1 ', N'@P1 > nvarchar(2)', N'5' > > This command performance isn't very differs from the plain > text command. > But for complex select query performance very much slow. The > same query > without parameters works faster. > I'd like to propose inside iBATIS (somewhere, I cann't still > find where) > parse command text and replace params via their values in the > CommandText. > After that into the server will be posted query like this: > > delete from Table1 where id = 5 > > May I try to implement such behaviour as an option? > > Happy New Year. ___________________________________________________________________________ This communication is confidential and may be legally privileged. If you believe you are not an intended recipient, please inform the sender, delete the e-mail and do not copy, print or use it or disclose it to others. You can inform the sender by replying to this e-mail or by telephone (+380 44 4906080).