muss mich hier doch noch mal melden.
Problem: Etwa nur jedes 3te mal beim Verbinden zur
SQL Datenbank per Button kommt die Nachricht "Verbindung erfolgreich" und selbst dann bin ich mir nicht sicher ob es geklappt hat.
Denn auch bei "Verbindung erfolgreich" klappt das Insert nicht.
Delphi-Quellcode:
var
SQLServer : PAnsiChar;
SQLBenutzer : PAnsiChar;
SQLPasswort : PAnsiChar;
SQLDatenbank : PAnsiChar;
...
SQLServer := PAnsiChar(AnsiString(edtServernameSQL.Text));
SQLBenutzer := PAnsiChar(AnsiString(edtBenutzernameSQL.Text));
SQLPasswort := PAnsiChar(AnsiString(edtPasswortSQL.Text));
SQLDatenbank := PAnsiChar(AnsiString(edtDatenbankSQL.Text));
...
procedure TfrmSQL.SqlVerbindungON;
begin
mySqlConnect := mysql_init(
nil);
if mySqlConnect =
nil then
begin
ShowMessage('
Nicht genug freier Speicher, um Verbindungsdeskriptor zu initialisieren');
Exit;
end;
if mysql_real_connect(mySqlConnect, SQLServer, SQLBenutzer, SQLPasswort, SQLDatenbank, 3306,
nil, 0) =
nil then
begin
ShowMessage('
Die Verbindung konnte nicht hergestellt werden. Ursache: ' + mysql_error(mySqlConnect));
Exit;
end;
ShowMessage('
Verbindung hergestellt');
end;
procedure TfrmSQL.SqlVerbindungOFF;
begin
mysql_close(mySqlConnect);
end;
//Insert Procedure
procedure TfrmSQL.SqlInsert(Tabelle :
string; Daten :
string);
var query : PChar;
begin
query := PChar('
INSERT INTO ' + Tabelle + '
VALUES ' + Daten);
mysql_real_query(mySqlConnect, PAnsiChar(AnsiString(
query)), Length(
query));
end;
//Aufruf der Insert Procedure
procedure TfrmMain.Button1Click(Sender: TObject);
begin
frmSQL.SqlVerbindungON;
try
//soll >> ('','Hallo') << darstellen
frmSQL.SqlInsert('
ausfaelle', '
(' + #39 + '
' + #39 + '
,' + #39 + '
Hallo' + #39 + '
)');
finally
frmSQL.SqlVerbindungOFF;
end;
end;
Wäre super wenn jemand rausfinden könnte, warum nur bei durschnittlich jedem 3ten Verbindungsauftrag dieser auch gelingt.