... a ver, que he hecho un proyecto mu simple y sigue fallando, ahora falla cuando quiere, no depende de la longitud...
Código Delphi
[-]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, StdCtrls;
type
TForm1 = class(TForm)
Database1: TDatabase;
Memo1: TMemo;
Button1: TButton;
Qinsertclase1: TQuery;
procedure Button1Click(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
with Qinsertclase1 do begin
UnPrepare;
parambyname('id').asinteger:=1;
parambyname('c1').asstring:='un texto';
parambyname('m2').asmemo:=self.memo1.text;
parambyname('i3').asinteger:=2;
prepare;
execsql;
end;
end;
end.
y los .dfm del database y de la query
Código Delphi
[-]
object Database1: TDatabase
AliasName = 'bdputomemo'
DatabaseName = 'bdbd'
SessionName = 'Default'
Left = 232
Top = 24
end
object Qinsertclase1: TQuery
DatabaseName = 'BDBD'
SQL.Strings = (
'insert into Tclase1 (id,c1,m2,i3) values (:id,:c1,:m2,:i3)')
Left = 276
Top = 22
ParamData = <
item
DataType = ftInteger
Name = 'id'
ParamType = ptUnknown
end
item
DataType = ftString
Name = 'c1'
ParamType = ptUnknown
end
item
DataType = ftMemo
Name = 'm2'
ParamType = ptInput
Size = 2048
end
item
DataType = ftInteger
Name = 'i3'
ParamType = ptUnknown
end>
end
He probado con el unprepare, sin el unprepare y con el close, con los dos..
dandole tiempo despues del prepare a que se prepare bien (cosas mas raras he visto ) ... con otros nombres de params (param0, param1 ) que no coincidan con los nombres de la tabla.. y nada!
Manolo.