Delphi - Diferencia entre SQL.Add y SQL.Text

 
Vista:

Diferencia entre SQL.Add y SQL.Text

Publicado por Judit (45 intervenciones) el 15/06/2006 01:15:45
Buenas noches!

Mi pregunta es si existe alguna diferencia en utilizar SQL.ADD y SQL.Text, ya que tengo una sentencia que al utilizarla con SQL.Text no me da ningun problema pero al utilizarla con SQL.Add me da un error.

La sentencia es la siguiente:

Con SQl.Add

Query2.Sql.Add('SELECT Cod_Prod, Descripcion, SUM(cantidad) AS CantidadT, SUM(SubTotal) AS Sub, SUM(Descuento) AS DescuentoT, SUM(Total) AS TotalT FROM QVentaC QVentaC ');
Query2.Sql.Add('Where Fecha_Emision between :PFechad and :PFechah');
Query2.SQL.Add('and GROUP BY Cod_Prod, Descripcion');

Con SQL.Text

Query2.SQL.Text := 'SELECT Cod_Prod, Descripcion, SUM(cantidad) AS CantidadT, SUM(SubTotal) AS Sub, SUM(Descuento) AS DescuentoT, SUM(Total) AS TotalT FROM QVentaC QVentaC Where Fecha_Emision between :PFechad and :PFechah GROUP BY Cod_Prod, Descripcion';

El error que me muestra utilizando SQL.Add es este:

Project LUIP.exe raised exception class EDBEngineError with message
'General SQl error.
[Microsoft][ODBC Microsoft Access Driver] Syntax error. in query expresion
'Descripcion
Select Cod_Prod'.'. Process stopped. Use Step or Run to continue.

Estoy utilizando access 2003 y delphi 7

Hay alguna diferencia o algo que no estoy tomando en cuenta?

Gracias anticipadas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Diferencia entre SQL.Add y SQL.Text

Publicado por Virum (484 intervenciones) el 15/06/2006 01:29:28
Hola:

Esto

SQL.Clear
SQL.Add

funciona igual que esto

SQL.Text

En las dos primeras líneas limpias lo que hay y añades

En el segundo caso sustituyes lo que hay por la nueva sentencia

Por lo que si antes de add limpias es lo mismo que text

Pero si antes de Add no limpias con clear te permite ir añadiendo sin que desaparezca lo existente.

No se si habrá otras diferencias.

Suertes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Diferencia entre SQL.Add y SQL.Text

Publicado por Judit (45 intervenciones) el 15/06/2006 01:39:51
Muchas gracias Virum, eso mismo era, no estaba limpiando el SQl.Add antes de añadirle la sentencia.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Diferencia entre SQL.Add y SQL.Text

Publicado por Freddy Rodriguez (1 intervención) el 30/07/2013 22:13:51
tambien hay otra diferencia mas notable, imaginate que tienes un query largo, dentro de un sql.text no te caben mas de 255 caracteres, entonces utilizas varios sql.add con el query dividido en partes y delphi automaticamente los va a concatenar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar