Ver Mensaje Individual
  #8  
Antiguo 29-08-2022
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
He intentado miles de formas pero al usar las comillas no lo puedo hacer, no consigo insertar los datos.

¿Cuál es el mensaje de error?

Si es un error de Delphi que te impide compilar y dice alg así como que "la línea no termina" debes seguir haciéndolo como hasta ahora lo hacías (Según tu ejemplo anterior)

Código Delphi [-]
SQL.Text := 'select * from pedidos inner join compras on pedidos.id=Compras.Id where pedidos.id=' + Quotedstr('A001') + ' and Compras.Id=' + Quotedstr('A001');

Para enteder el tema:
1. Los strings en Delphi se determinan entre comillas simpels
Código Delphi [-]
s := 'Hello World';
wrilte(s);
Código:
=>Hello World
2. La forma de poner una comilla simple en un string en el codigo es repitiéndola
Código Delphi [-]
s := 'Hello ''World''';
wrilte(s);
Código:
=>Hello 'World'
3. Otra forma de hacer lo mismo es mediante la función QuoteStr
Código Delphi [-]
s := 'Hello ' + QuotedStr('World');
wrilte(s);
Código:
=>Hello 'World'

Yo suelo hacerlo de la siguiente manera para poder ver código SQL dentro de código Delphi facilmente:

Código Delphi [-]
// Cierro Dataset
// Asigno SQL
// Filtro por parámetro
// Abro Dataset
with DataSet do
begin
   Close;
   SQL.Clear;
   SQL.Add(' SELECT ''PED'' as tipo, id, codigo, nombre, cantidad ');
   SQL.Add(' FROM PEDIDOS ');
   SQL.Add(' WHERE ');
   SQL.Add(' codigo = :CODIGO ');
   SQL.Add(' UNION ');
   SQL.Add(' SELECT ''COM'' as tipo, id, codigo, nombre, cantidad ');
   SQL.Add(' FROM COMPRAS ');
   SQL.Add(' WHERE ');
   SQL.Add(' codigo = :CODIGO ');
   Params.ByName['CODIGO'].AsString := 'A001';
   Open;
   [...]
end;
Responder Con Cita