SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Fortgeschrittene CSS-Techniken

Fortgeschrittene CSS-Techniken zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 18.09.2007, 20:44:37
theunexpecteds theunexpecteds ist offline
Anfänger
 
Registriert seit: Sep 2007
Beiträge: 2
INSERT INTO nur wenn SELECT keine Ergebnisse liefert - in einer Transaktion

Erstmal ein Hallo hier an's Forum.

Ich habe da ein Problem, vielleicht ist das auch für andere interressant.
Es sollen bestimmte Datensätze innerhalb einer Tabelle niemals doppelt angelegt werden.
Man könnte jetzt in PHP eine Abfrage mit 'SELECT' und den Bedingungen starten.
Wenn keine Datensätze vorhanden sind, dann den 'INSERT INTO' Query starten.
Wird aber dazwischen von einer anderen Instanz ein Datensatz mit den selben Werten erstellt wird, würde die Kontrolle nicht greifen.

Daher sollte die Kontrolle per 'SELECT' und der 'INSERT INTO' in einem einzigem Query erfolgen. Leider weiß ich hierzu nicht, wie man das in MySQL Funktionen realisiert.

So on, vielleicht habt ihr ja Ideen.
Mit Zitat antworten
  #2  
Alt 19.09.2007, 09:29:46
Raketenmann Raketenmann ist offline
Junior Member
 
Registriert seit: Jun 2004
Beiträge: 473
AW: INSERT INTO nur wenn SELECT keine Ergebnisse liefert - in einer Transaktion

Was soll denn passieren wenn ein Datensatz mit den selben Werten angelegt wird, während der MySQL-Server deine Anfrage bearbeitet?


Vielleicht wäre es besser die Spalten, die keine doppelten Werte enthalten dürfen, als "unique" zu deklarieren.
Mit Zitat antworten
  #3  
Alt 19.09.2007, 16:07:58
theunexpecteds theunexpecteds ist offline
Anfänger
 
Registriert seit: Sep 2007
Beiträge: 2
AW: INSERT INTO nur wenn SELECT keine Ergebnisse liefert - in einer Transaktion

Das Problem ist, das einzelne Werte in Spalten gleich sein dürfen. Die ganze Zeile mit gleichen werten darf allerdings nicht vorkommen.

Gibt es in MySQL eine Funktionenm wo ich in einem query sagen kann, wenn keine Ergbnisse vom SELECT dann führe folgendes aus?
Mit Zitat antworten
  #4  
Alt 19.09.2007, 17:15:23
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: INSERT INTO nur wenn SELECT keine Ergebnisse liefert - in einer Transaktion

dann leg doch einen unique-index über mehrere spalten an...
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Leeres Resultat? Sk3y MySQLi/PDO/(MySQL) 10 13.11.2006 18:57:40
Insert Into verkürzen? theaims MySQLi/PDO/(MySQL) 4 12.07.2006 21:24:27
INSERT INTO....SELECT Heinrich MySQLi/PDO/(MySQL) 2 02.06.2006 23:11:19
Menüstruktur aus Datenbank rekursiv auslesen daf555 PHP Entwicklung und Softwaredesign 3 26.02.2006 13:04:25
OUTER JOIN oder so? c4 MySQLi/PDO/(MySQL) 5 24.08.2004 13:15:09


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:19:30 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt