Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Neu hier // aus MySQL lesen (https://www.delphipraxis.net/106905-neu-hier-aus-mysql-lesen.html)

k4ni 18. Jan 2008 13:55

Datenbank: MySQL • Version: kp • Zugriff über: uMysqlClient

Neu hier // aus MySQL lesen
 
hey leute,

Ich will eigentlich was ganz simples machen.
Der client connected bei onCreate auf die MySQL datenbank. Das hab ich so gemacht:
Delphi-Quellcode:
  FMysql.Host := 'host';
  FMysql.port := 3306;
  FMysql.user :='user';
  FMysql.password := 'pass';
  FMysql.UnixSocket := '';
  FMysql.Db := 'DB206665161'; // Datenbank auf dem Server
  FMysql.UseNamedPipe := false;
  FMysql.UseSSL := false;
  FMysql.Compress := true;
  FMysql.TrySockets := false;
  if FMysql.Connect then
    ShowMessage('Verbindung aufgebaut')
  else
    ShowMessage('Fehler beim Verbinden: '+FMysql.LastError);
Natürlich mit den richtigen daten. und ich bekomme auch die "Verbindung aufgebaut" msg.
Nur jetzt will ich aus dieser datenbank aus der tabelle "test" schauen ob der eintrag "timo" vorhanden ist. Wie geht das?

Ich hab beim suchen nichts wirklich passendes gefunden.
Später möchte ich das dann mit HWID machen. Also wenn deine hwid in der tabelle "test" eingetragen ist öffnet sich das programm ganz normal, ansonsten schließt es sich sofort.

Danke im vorraus.

DeddyH 18. Jan 2008 13:59

Re: Neu hier // aus MySQL lesen
 
Was ist denn uMySQLClient? Gibt es da eine Methode query?

k4ni 18. Jan 2008 14:01

Re: Neu hier // aus MySQL lesen
 
Yepp gibt es. Also "uMySQLClient" hab ich von hier http://www.delphi-treff.de/tutorials.../mysql-direct/
Dort hab ich schon etwas zum auslesen gefunden, aber das hat irgendwie nicht funktioniert. Ich möchte ja eigentlich nur schauen ob der eintrag "timo" in der tabelle "test" da ist oder nicht.

Danke :)

DeddyH 18. Jan 2008 14:13

Re: Neu hier // aus MySQL lesen
 
Versuch es mal so:
Delphi-Quellcode:
var IsOK, gefunden: Boolean;
  iResult: TMySQLResult;
begin
  iResult := FMySQL.query('SELECT COUNT(*) AS Anzahl FROM test WHERE Benutzer = '+#39 + 'timo' + #39, true, IsOK);
  gefunden := IsOK and (iResult.FieldValueByName('Anzahl') <> '0');
  FreeAndNil(iResult);

k4ni 18. Jan 2008 16:08

Re: Neu hier // aus MySQL lesen
 
Vielen dank, funktioniert super.

k4ni 21. Jan 2008 14:59

Re: Neu hier // aus MySQL lesen
 
Sorry for bump aber ich wollte wissen wieso man eigentlich bei WHERE die #39 hinmacht?


Danke :)

DeddyH 21. Jan 2008 15:37

Re: Neu hier // aus MySQL lesen
 
In SQL sieht die Abfrage ja so aus:
SQL-Code:
'SELECT COUNT(*) AS Anzahl FROM test WHERE Benutzer = 'timo'
Dummerweise sind die Hochkommata (#39) in Delphi aber Stringendezeichen. Also verdoppelst Du sie oder Du schreibst #39 oder (noch besser, hatte ich in meinem obigen Post aber nicht mehr dran gedacht) Du verwendest QuotedStr.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz