Код добавления
- Код: Выделить всё
procedure TForm2.Button1Click(Sender: TObject);
var min,max, i, buf:integer;
datestr1,year1,month1,day1,datestr2,year2,month2,day2:string;
flagbool:boolean;
flagint,flagurg,flagmin, urg:integer;
q:TSQLQuery;
q1:array[1..60] of TSQLQuery;
begin
// Преобразование даты с SQLite для Lasarus
datestr1:=datetostr(DateEdit1.Date);
day1:=copy(datestr1,1,2);
month1:=copy(datestr1,4,2);
year1:=copy(datestr1,7,4);
datestr1:=year1+'-'+month1+'-'+day1;
datestr2:=datetostr(DateEdit3.Date);
day2:=copy(datestr2,1,2);
month2:=copy(datestr2,4,2);
year2:=copy(datestr2,7,4);
datestr2:=year2+'-'+month2+'-'+day2;
q := TSQLQuery.Create(self);
q.DataBase := Form1.SQLite3Connection1;
q.Transaction := Form1.SQLTransaction1;
q.SQL.Add('INSERT INTO magazine(DateJoin, urg, calcurg, calcmin, FIO, Place, DateBurn, dep, matherial, Dia, desc, Answer, Date, FIODoc) VALUES("'+datestr1+'",'+inttostr(flagint)+','+inttostr(flagurg)+','+inttostr(flagmin)+',"'+edit1.text+'","'+edit2.Text+'","'+inttostr(Spinedit3.Value)+'","'+inttostr(form2.ComboBox1.ItemIndex)+'","'+memo1.Text+'","'+memo2.Text+'","'+memo3.Text+'","'+memo4.Text+'","'+datestr2+'","'+edit3.text+'");');
q.ExecSQL;
form1.SQLQuery1.Active:=true;
form1.SQLQuery2.Active:=true;
form1.SQLQuery3.Active:=true;
form1.SQLQuery1.ApplyUpdates;
form1.SQLQuery2.ApplyUpdates;
Код изменения
- Код: Выделить всё
procedure TForm4.Button1Click(Sender: TObject);
var q:TSQLQuery;
min,max, i, buf, flag:integer;
flagbool:boolean;
flagint,flagurg,flagmin, urg, flagid:integer;
datestr2,year2,month2,day2,datestr3,year3,month3,day3:string;
q1,q2:TSQLQuery;
q3:array[1..60] of TSQLQuery;
begin
flag:=form1.Datasource1.DataSet.RecNo;
datestr2:=datetostr(DateEdit3.Date);
day2:=copy(datestr2,1,2);
month2:=copy(datestr2,4,2);
year2:=copy(datestr2,7,4);
datestr2:=year2+'-'+month2+'-'+day2;
// Вот здесь, вроде как, начинается ошибка
datestr3:=datetostr(DateEdit2.Date);
day3:=copy(datestr3,1,2);
month3:=copy(datestr3,4,2);
year3:=copy(datestr3,7,4);
datestr3:=year3+'-'+month3+'-'+day3;
//
q := TSQLQuery.Create(self);
q.DataBase := Form1.SQLite3Connection1;
q.Transaction := Form1.SQLTransaction1;
q2 := TSQLQuery.Create(self);
q2.DataBase := Form1.SQLite3Connection1;
q2.Transaction := Form1.SQLTransaction1;
form1.SQLQuery1.Active:=false;
form1.SQLQuery2.Active:=false;
form1.SQLQuery3.Active:=false;
q.SQL.Add('UPDATE magazine SET DateJoin='+datestr3+',calcurg='+inttostr(flagurg)+', calcmin='+inttostr(flagmin)+', urg='+inttostr(flagint)+', FIO="'+edit1.text+'", Place="'+edit2.Text+'", DateBurn="'+inttostr(Spinedit3.Value)+'", dep="'+inttostr(form4.ComboBox1.ItemIndex)+'", matherial="'+memo1.Text+'", Dia="'+memo2.Text+'", desc="'+memo3.Text+'", Answer="'+memo4.Text+'", Date="'+datestr2+'", FIODoc="'+edit3.text+'" WHERE magazine.id='+inttostr(flagid)+';');
q.ExecSQL;
form1.SQLQuery1.Active:=true;
form1.SQLQuery2.Active:=true;
form1.SQLQuery3.Active:=true;
Как видите, исполнено всё одинаково. Добавлял другие формы, переписывал в ручную код...всё одно и то же. Надеюсь, что сможете показать, где я слеп.
Lasarus 1.0.12, sqlite3 expert, ОС - winxp