Cita:
Empezado por delphi.com.ar
No te entiendo.. ¿No te funciona un INSERT de un SELECT?
|
Exactamente, me abre el módulo (de Zeos)
ZDbcMySqlUtils y saca un mensaje de error:
Project Parking.exe raised exception class EZSQLException with message ¡SQL Error: Algo está equivocado en su sintaxis cerca 'SELECT ìd_empresa`FORM `distribuidores`WHERE `cif_empresa`="1' (aquí se corta)
en la línea 1'.
La query es la siguiente:
Código SQL
[-]
INSERT INTO `articulos` ( `nombre`, `id_empresa` )
VALUES ( "Gel",
(SELECT `id_empresa`
FROM `distribuidores`
WHERE `cif_empresa`="12345000000")
);
y en el susodicho modulo
ZDbcMySqlUtils, señala la línea del
raised:
Código Delphi
[-]
procedure CheckMySQLError(PlainDriver: IZMySQLPlainDriver;
Handle: PZMySQLConnect);
var
ErrorMessage: string;
ErrorCode: Integer;
begin
ErrorMessage := Trim(StrPas(PlainDriver.GetLastError(Handle)));
ErrorCode := PlainDriver.GetLastErrorCode(Handle);
if (ErrorCode <> 0) and (ErrorMessage <> '') then
begin
raise EZSQLException.CreateWithCode(ErrorCode,
Format('SQL Error: %s', [ErrorMessage]));
end;
end;
Cita:
Empezado por delphi.com.ar
Te dice que no puede crearla... ¿Porqué?... ¿Da alguna información mas el mensaje de error?
|
Esto me lo dá cuando creo la tercera tabla, que pienso que debe tener relación con las dos anteriores, exactamente el mensaje es:
Project Parking.exe raised exception class EZSQLException with message 'SQL Error: No puedo crear la tabla '.\dai_1\productos.frm (Error 150)'
He buscado por "San Google" y no he visto nada sobre esto, el caso es que si dejo un solo
FOREING KEY (el de la tabla `articulos`) el error desaparece, vamos, como si nada más se pudiese tener una sola clave foránea.
Lo de la coma, fué un fallo mio al hacer el "CopyPaste", ya que con el nuevo formato del foro pierdo las etiquetas [ delphi ] y [ /delphi ]
Gracias por todo, seguiremos investigando
Salvica