![]() |
Datenbank: MYSQL • Version: 4.1 • Zugriff über: MYSQL Direct
Problem mit MySQL Direct
Hallo,
ich habe heute eine MySQL 4.1 Datenbank auf meinem lokalen Server aufgesetzt und möchte nun dort über MySQL Direct Datensätze hinzufügen. Das Verbinden zum Server und das selektieren der vorhandenen Datenbanken funktioniert ohne Probleme. Da haben mir diverse Tutorials auch gut weitergeholfen. Nun stecke ich allerdings fest. Meine Datenbank besteht aus 2 Spalten, die Erste enthält einen String, die Zweite ist ein Counter der die Zugriffe auf diesen Datensatz zählt. Ich möchte nun also prüfen ob der String in der Datenbank bereits vorhanden ist, sollte das der Fall sein soll der Counter um Eins erhöht werden, ist dies nicht der Fall soll der String der DB hinzugefügt werden und der Counter auf 0 gesetzt werden. Ich habe leider nur keine Ahnung wie das geht. Kann mir dabei vielleicht Jemand weiter helfen? MfG |
Re: Problem mit MySQL Direct
Ich kann dir nicht helfen, wie das in MySQL Direct funktioniert, aber wie du das im Prinzip anpacken kannst.
1. Mach ein Count auf deine Tabelle, ob der String schon existiert. Einfach mit
SQL-Code:
Ist N=0, machst du ein Insert in die Tabelle, und setzt dein StringFeld auf den gewünschten Wert.
select count(*) as N from Tabelle where StringFeld='dein wert'
Ist N <> 0, einfach ein
SQL-Code:
und anschliessend ein Edit
select * from Tabelle where StringFeld='dein wert'
In beiden Fällen nur noch die Zählerspalt füllen, etweder auf 0 setzen im 1. Fall, oder um 1 erhöhen im 2. Fall, und dein Record posten... Fertig. |
Re: Problem mit MySQL Direct
du kannst sogar noch einen schitt weitergehen und das ganze in mysql scripten:
SQL-Code:
Beide Zeilen dieses querys sperat, aber in einer Verbindung ausführen. Ich hoffe die mysql-Syntax ist korrekt. Das ... bei dem WHERE musst du nat. ersetzen...
SELECT @cnt :=COUNT(*) FROM tabelle WHERE ...
IF (@cnt =0, INSERT INTO tabelle (stringfeld,counter) VALUES ('string',0), UPDATE tabelle SET counter=counter+1 WHERE ...) |
Re: Problem mit MySQL Direct
hallo =),
ich danke euch beiden für eure schnelle hilfe =), ähnliche beispiele zur mysql syntax habe ich auch schon wärend meiner stundenlangen suche mit google gefunden, momentan ist das allerdings nicht das hauptproblem. (obwohl es mir sicher später noch helfen wird) zurzeit bin ich einfach völlig unfähig derartige anfragen über 'mysql direct' zu stellen und auf eine lösung in php möchte ich verzichten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:14 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