Clarion y MSSQL Driver Pregunta

SQL, mySQL, postgreSQL y otros motores
Responder
osquiabro
Al nivel de RZ
Mensajes: 179
Registrado: Dom Feb 06, 2011 10:06 pm
Contactar:

Clarion y MSSQL Driver Pregunta

Mensaje por osquiabro » Dom Mar 20, 2011 11:56 am

como puedo evitar que el driver nativo de sql server ejecute un select * from tabla?? esto me esta creando un delayyyyyy al ejecutar un reporte, es un view(del lado del motor) que lo importe al dct y esta filtrado , pero antes de la ejecucion hace un select *, esto es mortal para esa vista..
Saludos!

Omar Squiabro
Puerto Rico


Avatar de Usuario
Mauricio
Desarrollador de Clarion
Mensajes: 1125
Registrado: Dom Feb 06, 2011 9:34 am
Ubicación: España
Contactar:

Re: Clarion y MSSQL Driver Pregunta

Mensaje por Mauricio » Dom Mar 20, 2011 2:44 pm

Qué select te está ejecutando? Si es un Where 1 = 0 en realidad no ejecuta nada (dado que el WHERE se evalúa antes del SELECT).
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog

osquiabro
Al nivel de RZ
Mensajes: 179
Registrado: Dom Feb 06, 2011 10:06 pm
Contactar:

Re: Clarion y MSSQL Driver Pregunta

Mensaje por osquiabro » Dom Mar 20, 2011 4:13 pm

Maurico gracias por contestar, al añadirle un key del lado de clarion se ejecuto sin problemas, ahora lo que no entiendo es por que si en el reporte en el additional sort tenia unos campos alli y al parecer no los toma en cosideracion..
Saludos!

Omar Squiabro
Puerto Rico

Avatar de Usuario
Mauricio
Desarrollador de Clarion
Mensajes: 1125
Registrado: Dom Feb 06, 2011 9:34 am
Ubicación: España
Contactar:

Re: Clarion y MSSQL Driver Pregunta

Mensaje por Mauricio » Dom Mar 20, 2011 6:19 pm

El SQL busca el índice más adecuado para resolver la consulta. Si no hay un índice que se adapte (porque los campos en el ORDER BY no respectan en el orden a ninguno de los índices) no le queda otra que hacer un SORT de todos los registros involucrados, operación que normalmente le consume tiempo y recursos.
Lo extraño es que decís que lo resolviste añadiendo un índice del lado de Clarion, no le encuentro la lógica a eso.
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog

osquiabro
Al nivel de RZ
Mensajes: 179
Registrado: Dom Feb 06, 2011 10:06 pm
Contactar:

Re: Clarion y MSSQL Driver Pregunta

Mensaje por osquiabro » Dom Mar 20, 2011 9:17 pm

al añadirle un indice del lado de clarion me genera un order by por los campos de ese indice esto es lo que genero:

SELECT A.MASTERBILLOFLADINGID, A.BILLOFLADINGID, A.CUSTOMERNAME, A.SHIPTOCITY, A.DELIVERYMASTERID, A.BILLOFLADINGPIECES, A.VOLUME, A.WEIGHT, A.TAXSERVICEAMOUNT, A.COD, A.CURRENTBALANCE, A.DRIVERNAME, A.PHONE, A.ROUTEDATE, A.DELIVERYDRIVERCHARGE FROM dbo.FreightBillingReport A WHERE ( a.DeliveryMasterID=1 ) ORDER BY A.BILLOFLADINGID, A.DELIVERYMASTERID, A.MASTERBILLOFLADINGID, A.CUSTOMERNAME

esto es un view del lado del motor e importado al dct como una tabla, por tal razon no tiene indice del lado de clarion al menos que uno se agrege.
Saludos!

Omar Squiabro
Puerto Rico


Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 21 invitados