Einzelnen Beitrag anzeigen

Benutzerbild von eLem3ntx
eLem3ntx

Registriert seit: 31. Aug 2006
Ort: Remshalden
22 Beiträge
 
#31

Re: BDES 2006 und externe mySQL Verbindung

  Alt 3. Okt 2006, 12:59
Ok also ich hab das jetzt behoben kann auch schon daten auslesen doch am Ende kommt immer ein Fehler von BDES dass es Zugriffsverletzungen in der libmySQL.dll gäbe. Doch hier mal der Script:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, mySQL, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

//============================================================
type
  TdelphiEntry = record
    name: String;
    text: String;
  end;
  TdelphiEntries = Array of TdelphiEntry;
//============================================================

procedure TForm1.Button1Click(Sender: TObject);
var
  _myCon: PMySQL;
  host, user, pass, db: PChar;

//============================================================
  delphi: TdelphiEntries;
  _myRes: PMySQL_Res;
  _myRow: PMySQL_Row;
  i: Integer;
  query: PChar;
//============================================================

begin

  host := 'http://db.odin.hosting-agency.de';
  user := '*****';
  pass := '*****';
  db := '*****';

  _myCon := mysql_init(nil);
  if _myCon = nil then
  begin
    ShowMessage('Nicht genug freier Speicher, um Verbindungsdeskriptor zu initialisieren');
    Exit;
  end;

  if mysql_real_connect(_myCon, host, user, pass, db, 3306, nil, 0) = nil then
  begin
    ShowMessage('Die Verbindung konnte nicht hergestellt werden. Ursache: ' + mysql_error(_myCon));
    Exit;
  end;

  ShowMessage('Verbindung hergestellt');


  query := 'SELECT * FROM delphi ORDER BY id';
  mysql_real_query(_myCon, query, Length(query));

  _myRes := mysql_store_result(_myCon);
  if _myRes = nil then
  begin
    ShowMessage('Es konnten keine Datensätze zurückgebenen werden. Ursache: ' + mysql_error(_myCon));
    Exit;
  end;

  SetLength(delphi, mysql_num_rows(_myRes));

  for i := 0 to High(delphi) do
  begin
    _myRow := mysql_fetch_row(_myRes);
    delphi[i].name := _myRow[0];
    delphi[i].text := _myRow[1];
   
showmessage(delphi[i].name);

  mysql_free_result(_myRes);


  mysql_close(_myCon);
end;
end;

end.
Und dann wäre da noch die Frage wie ich datensätze per Delphi einfügen kann, mach ich dass auch mit insert into?
  Mit Zitat antworten Zitat