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 ::

TYPO3 Kochbuch

TYPO3 Kochbuch 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 29.06.2007, 16:35:06
colt_s colt_s ist offline
Anfänger
 
Registriert seit: Jun 2007
Beiträge: 3
Foreign Key liefert nur ein Ergebnis

Wunderschönen guten Tag,

wie es immer so ist in einem Forum, habe ich ein kleines Problem bei MySQL.
Und zwar geht es um folgendes.

Ich programmiere grad ein kleines Forum selber bzw. es ist schon fertig.

Es liegt vereinfacht folgendes ERM zugrunde: ansehen

Ich habe zwei Datenbanken, eine auf meinem PC zum testen, die andere beim Webhoster Starto.

Bei der Datenbank auf meinem PC stellt sich dieses Problem nicht dar. Nur bei Starto hab ich die Problematik, das wenn ich den folgenden Query ausführe ich nur eine Ergebnismenge zurückbekomme.

select * from beitrag natural join thema natural join unterforum

Normalerweise müsste ich bei diesem Query alle Daten aus der Tabelle beitrag und die dazugehörigen Daten aus der Tabelle unterforum bekommen.

Doch leider bekomme ich nur die Daten aus der Tabelle unterforum, aber nicht die dazugehörigen Daten aus beitrag.

Ein FOREIGN KEX zwischen den Tabellen besteht, die ENGINE = InnoDB.

Das was mich verwirrt ist, das es auf meiner DB funzt, in der DB auf dem Webserver nicht.
meine Vermutung liegt darin, das es irgendwo eine Einstellung dafür gibt. Doch nachdem ich nun einige Stunden gesucht habe (Bücher, Google etc.) kam ich zu keinem Ergebni und hoffe nun auf eure Hilfe.

Das Forum kann auch unter www.vote-my-car.com/forum.php als Beispiel angesehen werden.
Visuell stellt es sich so dar, das der Zähler beiträge (siehe Forum) nur 1 anzeigt, obwohl über den NATURAL JOIN mehrere (derzeit 3) einträge gezählt werden müssten.

Ich danke vielmals für die Mühen.
Mit Zitat antworten
  #2  
Alt 29.06.2007, 17:34:25
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Foreign Key liefert nur ein Ergebnis

Zitat:
Zitat von colt_s Beitrag anzeigen
Das was mich verwirrt ist, das es auf meiner DB funzt, in der DB auf dem Webserver nicht.
Mich verwirrt das weniger. Ich persönlich gehe nicht davon aus, daß der Kram unter 5.x "da heme" genauso gut wie "uff'm Server" mit 4.1 funktioniert, obwohl ich zu Hauser wie auch auf dem/n Server(n) Rootzugriff habe.

Jut, ich bin faul und bastle meinen Kram so um, daß er mit dem gerade aktuellen Server klarkommt. Genau das wäre mein Rat - was nutzt Dir eine Webanwendung, die nur genau dort funktioniert, wo "außer den üblichen Verdächtigen" keiner zuguckt?

Anders ausgedrückt: "Der Wurm muß dem Fisch schmecken und nicht dem Angler!"

Geändert von meikel (†) (30.06.2007 um 04:23:47 Uhr)
Mit Zitat antworten
  #3  
Alt 29.06.2007, 18:58:23
colt_s colt_s ist offline
Anfänger
 
Registriert seit: Jun 2007
Beiträge: 3
AW: Foreign Key liefert nur ein Ergebnis

Nun, da ist was wahres dran.

daher verwende ich auch daheim die gleiche Datenbank wie diese auch auf dem Server läuft.

Natürlich kann man bei kleineren Projekten live auf dem System programmieren, welches auch die User nutzen. Doch ist dieses nicht möglich, wenn man Datenbanken für Kunden entwickelt. Dazu müsste man dann ständig zum Kunden fahren bzw. diesen zwingen, den Server über DynDNS Online zu stellen.
Dieses Phänomen ist mir schon einmal aufgefallen, konnte mir zwar damit behelfen, das ich die Querys abgeändert habe. Doch es muss ja einen Grund dafür geben.......

Ich versuche das ganze besser zu veranschaulichen.
In der Tabelle Thema steht ein Eintrag


Code:
| thema_id  | thema_titel   | 
--------------------------------
| 1              |Fragen stellen|

In der Tabelle Beitrag stehen mehrere Einträge
Code:
| beitrag_id | beitrag_titel | thema_id |
--------------------------------------------
| 1              |Beitrag 1      |  1           |
| 2              |Beitrag 2      |  1           |
| 3              |Beitrag 3      |  1           |
Wenn ich nun eine Query wie folgt absetzte...

select * from beitrag natural join thema

... müsste ja folgendes raus kommen!
Code:
| beitrag_id | beitrag_titel | thema_id |  thema_titel   | 
--------------------------------------------------------------
| 1              |Beitrag 1      |  1           | Fragen stellen| 
| 2              |Beitrag 2      |  1           | Fragen stellen| 
| 3              |Beitrag 3      |  1           | Fragen stellen|
Statdessen bekomme ich folgendes:
Code:
| beitrag_id | beitrag_titel | thema_id |  thema_titel   | 
--------------------------------------------------------------
| 1              |Beitrag 1      |  1           | Fragen stellen|
Die letzten beiden Einträge werden nicht mit ausgegeben. Und ich weiß nicht warum. Es liegt nicht an der Datenbankversion.

Wie kann das möglich sein??

Geändert von colt_s (29.06.2007 um 19:03:53 Uhr)
Mit Zitat antworten
  #4  
Alt 29.06.2007, 19:21:02
colt_s colt_s ist offline
Anfänger
 
Registriert seit: Jun 2007
Beiträge: 3
AW: Foreign Key liefert nur ein Ergebnis

Und was dem ganzen noch die Krone aufsetzt und ich vergessen habe zu erwähnen.

In der selben Datenbak befindet sich ein vergleichbarer natural join zwischen der Tabelle Mitglied und der Tabelle Auto.
Eigenartigerweise funktioniert es da wie gewünscht.
Mit Zitat antworten
  #5  
Alt 30.06.2007, 04:47:07
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Foreign Key liefert nur ein Ergebnis

Zitat:
Zitat von colt_s Beitrag anzeigen
daher verwende ich auch daheim die gleiche Datenbank wie diese auch auf dem Server läuft.
Hatte ich früher auch gemacht. Hatte sich als unpraktisch erwiesen. Heute erledige ich vieles in der Kommandozeile gleich auf dem Server. PHP Scripte werden mit dem "Mitternachts Commander" editiert, Datenbankabfragen werden in der MySQL Konsole getestet. Für den Rest richte ich dann eine Subdomain ein.

Allerdings hatte ich fast ausschließlich nur mit Webanwendungen zu tun, die ich ausschließlich selber hoste. Da weiß ich wenigstens vorher, was klappt und was nicht.
Zitat:
Doch ist dieses nicht möglich, wenn man Datenbanken für Kunden entwickelt. Dazu müsste man dann ständig zum Kunden fahren bzw. diesen zwingen, den Server über DynDNS Online zu stellen.
Stimmt, das wird der nicht mitmachen.

Dein Problem ist dann allerdings, die Umgebung des Kundens mit allen Bugs auf Deinem Notebook zu duplizieren. Dazu wäre ich allerdings zu faul...

Zitat:
Dieses Phänomen ist mir schon einmal aufgefallen, konnte mir zwar damit behelfen, das ich die Querys abgeändert habe. Doch es muss ja einen Grund dafür geben.......
Sicher gibt es dafür einen Grund: Du mußt auf Deiner Kiste die selben Bugs verwenden wie der Kunde. <g>

Zitat:
Wie kann das möglich sein?
Fremdschlüssel verwende ich noch nicht. Grund: momentan verwende ich MySQL 4.1, weil ich nicht genau weiß, ob Plesk mit MySQL 5 klarkommt.

Geändert von meikel (†) (30.06.2007 um 04:49:19 Uhr)
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
Group By liefert kleinste ID Reinfi MySQLi/PDO/(MySQL) 13 09.01.2007 23:41:17
FOREIGN KEY .. REFERENCES .. xjmdolby MySQLi/PDO/(MySQL) 3 06.04.2006 12:42:41
Bei for-Schleife das Ergebnis eines Durchgangs an den Anfang setzen Ichthys PHP Grundlagen 1 11.03.2006 17:52:57
db ergebnis ungleich array ergebnis nites PHP für Fortgeschrittene und Experten 0 10.01.2006 20:27:26
sql liefert kein ergebnis. wie abfangen? manstir PHP Grundlagen 5 19.04.2005 19:44:25


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:02:07 Uhr.


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


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