Ankündigung

Einklappen
Keine Ankündigung bisher.

Mysql Join Abfrage

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • selfmade02
    hat ein Thema erstellt Mysql Join Abfrage.

    Mysql Join Abfrage

    Hallo
    ich habe 4 Tabellen

    Room, Mix_Container, Mix_Container_Typ, Becken_Typ
    In Room ist die Room_Id und die Room_Nr.
    Im Mix_Container_Typ ist der Mix_Container_Typ_Name,
    Im der Becken_Typ Tabelle ist der Becken_Typ
    den ich benötige
    Da ich nur ganzen ID's der jeweiligen Tabellen in der Mix_Container abgespeichert habe, möchte ich nun ein join abfrage machen in der mir aus den anderen Tabellen die dazugehörigen Namen/Werte gezogen werden.

    PHP-Code:
    SELECT Room.Room_Nr,Becken_Typ.Becken_TypMix_Container.Becken_Info_IdMix_Container.Container_NrMix_Container_Typ.Mix_Container_Typ_NameMix_Container.VolumeMix_Container.Volume_CurrentMix_Container.Sensor_Dist_FullMix_Container.Sensor_Dist_EmptyMix_Container.Last_Time_CleanMix_Container.Last_Time_Change_MixMix_Container.Ideal_Temp
    FROM Mix_Container
    Mix_Container_Typ,Becken_TypRoom
    WHERE Mix_Container
    .Becken_Typ_Id =Becken_Typ.Becken_Typ_Id
    AND Mix_Container.Mix_Container_Typ_Id Mix_Container_Typ.Mix_Container_Typ_Id 
    Mit dem oben SELECT bekomme ich zwar alle Daten nur mit dem Problem das diese mir doppelt, dreifach oder vierfach ausgegeben werden.

    Irgendwie habe ich den Join nicht richtig geschrieben.
    Sieht jemand meinen Fehler?

    Gruß Jürgen

  • selfmade02
    antwortet
    Zitat von Arne Drews Beitrag anzeigen
    ok, habs glaub ich verstanden.

    ich muss den charset auch nach dem mysqlconnect setzen damit Daten in die DB mit diesem Charset übertragen werden.
    Gut werde ich gleich heute abend mal testen.

    Gruß Jürgen

    Einen Kommentar schreiben:


  • Arne Drews
    antwortet
    Bspw. mysqli::set_charset

    Einen Kommentar schreiben:


  • selfmade02
    antwortet
    Zitat von Arne Drews Beitrag anzeigen
    Wie sieht die Verbindung mit der DB aus?
    PHP-Code:
    $mysqli = new mysqli($mysqlhost$mysqluser$mysqlpasswd$mysqldbname$mysqlport);
    if (
    $mysqli->connect_errno) {
        echo 
    "Failed to connect to MySQL: (" $mysqli->connect_errno ") " $mysqli->connect_error;

    mehr habe ich darin nicht angegeben
    oder welche Verbindung meinst Du?

    Einen Kommentar schreiben:


  • Arne Drews
    antwortet
    Wie sieht die Verbindung mit der DB aus?

    Einen Kommentar schreiben:


  • selfmade02
    antwortet
    Zitat von Arne Drews Beitrag anzeigen
    Die Tabelle, Datenbank und die Verbindung selbst müssen ebenfalls UTF-8 sein!
    Hallo,
    die Tabellen selbst sind alle in utf8_general_ci konfiguriert.
    die Webseite selbst wurde auch auf UTF-8 eingestellt.
    auf der Webseite wird alles sauber dargestellt nur wenn ich über phpmyadmin in die db schaue sehe ich das dort der Zeichensatz nicht angewendet wird bzw. das es ohne die richtige Kodierung eingetragen wurde.

    wo sollte ich also noch etwas einstellen das es auch in der db sauber eingetragen wird?
    Gruß Jürgen

    ps
    auch die ganze mysqldb ist mit
    Zeichensatz / Kollation der MySQL-Verbindung = utf8_general_ci
    konfiguriert
    dort steht auch
    MySQL-Zeichensatz: UTF-8 Unicode ( utf8 )

    Einen Kommentar schreiben:


  • Arne Drews
    antwortet
    Die Tabelle, Datenbank und die Verbindung selbst müssen ebenfalls UTF-8 sein!

    Einen Kommentar schreiben:


  • selfmade02
    antwortet
    Zitat von <Hotte> Beitrag anzeigen
    Du hast 4 Tabellen aber insgesamt nur 2 Verknüpfungen!
    Beim Join mit "Room" fehlt die Verbindung.
    Hallo,
    Danke genau das war es.

    Noch eine Frage.
    Ich arbeite hier mit UTF-8 Zeichensatz.
    Auf der Seite wird alles sauber ausgegeben.
    In meiner Mysqldb stehen jedoch die Umlaute mit seltsamen Zeichen drin also wohl nicht im UTF-8 Zeichensatz.

    in der DB habe ich im entsprechenden Feld
    utf8_general_ci
    angegeben.
    war das falsch?

    Gruß Jürgen

    ps. ich benutze mysqli.
    weiss nur nicht ob es nun an meiner db-einstellung liegt oder ob ich was in php mit mysqli vorbereiten muss

    Einen Kommentar schreiben:


  • <Hotte>
    antwortet
    Du hast 4 Tabellen aber insgesamt nur 2 Verknüpfungen!
    Beim Join mit "Room" fehlt die Verbindung.

    Einen Kommentar schreiben:

Lädt...
X