Lazarus + mysql

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Lazarus + mysql

Сообщение reihtmonbern » 17.07.2011 18:41:29

Здравствуйте свободные разработчики у меня к вам вопрос : работаю с lazarus 9.30 соединился с mysql 5.1 решил проблему отображение русских букв в таблице но вот ведь не задача я могу добавить новые записи а вот удалить их или изменить не могу ? как решить эту проблему ? в добавок прикрепляю скриншот, сам проект, и исходный код.

Код: Выделить всё
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, mysql50conn, sqldb, odbcconn, db, FileUtil, Forms,
  Controls, Graphics, Dialogs, DbCtrls, DBGrids, StdCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Datasource1: TDatasource;
    DBGrid1: TDBGrid;
    DBNavigator1: TDBNavigator;
    MySQL50Connection1: TMySQL50Connection;
    SQLQuery1: TSQLQuery;
    SQLTransaction1: TSQLTransaction;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure MySQL50Connection1AfterConnect(Sender: TObject);




  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;
   isAllOK:boolean;

implementation

{$R *.lfm}

{ TForm1 }


{ TForm1 }



{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
begin
     isAllOk:=true;
     try
       MySQL50Connection1.Connected:=true;
     except
       ShowMessage(' Не могу подключиться к базе данных');
       isAllOk:=false;
       exit;
     end;

     try
       SQLTransaction1.Active:=true;
     except
       ShowMessage(' Не могу создать транзакцию');
       isAllOk:=false;
       exit;
     end;

     try
        SQLQuery1.Active:=false;
        SQLQuery1.SQL.Clear;
        SQLQuery1.sql.add('SET character_set_client='+#39+'utf8'+#39+', character_set_connection='+#39+'cp1251'+#39+',character_set_results='+#39+'utf8'+#39+';');
        SQLQuery1.ExecSQL;
        SQLQuery1.SQL.Clear;
        SQLQuery1.sql.add('SELECT * from  table1;');
        SQLQuery1.Open;
     except
        ShowMessage(' Ошибка при выполнении SQL запроса.');
        isAllOk:=false;
        exit;
     end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  SQLQuery1.Last;
SQLQuery1.Prior;
SQLQuery1.Insert;
SQLQuery1.Post;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  SQLQuery1.ApplyUpdates;
  SQLTransaction1.Commit;
   MySQL50Connection1.Connected:=true;
   SQLTransaction1.Active:=true;
   SQLQuery1.Active:=true;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
   SQLQuery1.Delete;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
   SQLQuery1.post;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
  SQLQuery1.Edit;
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
SQLQuery1.insert;
end;

procedure TForm1.MySQL50Connection1AfterConnect(Sender: TObject);
begin

end;


end.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
reihtmonbern
незнакомец
 
Сообщения: 4
Зарегистрирован: 17.07.2011 18:26:09

Re: Lazarus + My sql

Сообщение sign » 18.07.2011 06:50:29

Пользуйтесь SQL.

Например:

SQLQuery1.Close;
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.ADD('INSERT INTO table1( Num, FIO) VALUES (110, "Петров")');
SQLQuery1.ExecSQL;

SQLQuery1.Close;
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.ADD('DELETE FROM table1 WHERE Num = 110');
SQLQuery1.ExecSQL;

sign
энтузиаст
 
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53

Re: Lazarus + My sql

Сообщение v-t-l » 18.07.2011 08:48:08

v-t-l
энтузиаст
 
Сообщения: 741
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 228

Рейтинг@Mail.ru
cron