Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Tabellen verknüpfen Mysql

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Tabellen verknüpfen Mysql

    Sorry ich bekomme es einfach nicht hin...

    ich habe eine Tabelle "login" mit id / username / passwort

    und eine Tabelle "userdaten" mit id / age /city /status / userid

    die Tabellen möchte ich mit der "id" von login mit "userid" von userdaten verknüpfen.

    bei phpMyAdmin trage ich bei login unter SQL nun ein:

    Code:
    SELECT 
     age, city, status, userid
    FROM 
      userdaten
    LEFT JOIN login
      ON login.id = userdaten.userid ;
    klappt nicht,
    oder wenn ich:

    Code:
    SELECT
      age, city, status, userid
    FROM
      userdaten
    WHERE 
     login.id = userdaten.userid
    mache, klappt es auch nicht.

    Habe keine Ahnung, warum ich jedes mal eine Fehlermeldung erhalte...

  • #2
    Zitat von Anormal Beitrag anzeigen
    Habe keine Ahnung, warum ich jedes mal eine Fehlermeldung erhalte...
    Welche?

    Kommentar


    • #3
      Zum Beispiel diese:

      #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT
      age, city, status, userid
      FROM
      userdaten
      WHERE
      login.id = userdaten' at line 3

      Kommentar


      • #4
        Setze deine Felder mal in Backticks. status ist ein Schlüsselwort.

        Kommentar


        • #5
          so?

          Code:
          SELECT
            `age`, `city`, `statuss`, `userid`
          FROM
            userdaten
          WHERE 
           login.id = userdaten.userid
          klappt auch nicht

          Kommentar


          • #6
            weil... du status mit zwei s geschrieben hast!?

            Kommentar


            • #7
              Zitat von Anormal Beitrag anzeigen
              klappt auch nicht
              Das ist keine Problembeschreibung! Wieder keine Fehlermeldung!
              Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

              Kommentar


              • #8
                Du kannst nicht auf
                PHP-Code:
                login.id 
                zugreifen, wenn du die Tabelle "login" nicht selektierst.

                Probier mal:
                PHP-Code:
                SELECT
                  age
                citystatususerid
                FROM
                  userdaten
                ,
                  
                login
                WHERE 
                 login
                .id userdaten.userid 
                Ach ja, und das Schlüsselwort muss raus.

                EDIT: Sollte aber auch so gehen: userdaten.status

                Kommentar


                • #9
                  also.... ich habe status umgeändert in statuss

                  wenn ich es so versuche:

                  Code:
                  SELECT
                    age, city, statuss, userid
                  FROM
                    userdaten,
                    login
                  WHERE 
                   login.id = userdaten.userid
                  dann steht dort:

                  Die aktuelle Markierung enthält keine eindeutige ("unique") Spalte. Gitter-Bearbeitungsfunktion, Kontrollkästchen, Bearbeiten, Kopieren und Löschen von Links sind nicht verfügbar.
                  und er zeigt mir nur die werte von "userdaten" an

                  Kommentar


                  • #10
                    WAS? Was benutzt du da für eine Datenbank? Was benutzt du für ein Datenbanktool?

                    Kommentar


                    • #11
                      Du hast ja auch nur die selektiert. Vielleicht so?

                      PHP-Code:
                      SELECT
                        login
                      .id,
                        
                      login.username,
                        
                      login.passwort,
                        
                      userdaten.age,
                        
                      userdaten.city,
                        
                      userdaten.statuss,
                        
                      userdaten.userid
                      FROM
                        userdaten
                      ,
                        
                      login
                      WHERE 
                       login
                      .id userdaten.userid 

                      Kommentar


                      • #12
                        ah ok super das klappt ^^

                        er hat jetzt die daten aus login und userdaten verknüft

                        jetzt noch eine letzte frage :

                        ich habe bei login :

                        id / username / passwort
                        1 / blabla / ****
                        2 / blablabla / *****
                        und bei userdaten

                        id /age /city/status/userid
                        1 / 26 / kp / kp2 / 1
                        mysql fasst es nun so zusammen:

                        id / username / passwort / age / city / status
                        1 / blabla / ********** / 26 / kp1 / kp2
                        wie kann ich es nun machen, dass user nummer 2 auch angezeigt wird, aber halt mit (noch) leerem eintrag ? Dass quasi dasteht:

                        id / username / passwort / age / city / status
                        1 / blabla / ********** / 26 / kp1 / kp2
                        2 / blablabla / ****** / (frei) / (frei) / (frei)
                        vielen dank soweit schonmal

                        Kommentar


                        • #13
                          Das müsstest du dann mit einem Join machen.

                          PHP-Code:
                          SELECT
                            login
                          .id,
                            
                          login.username,
                            
                          login.passwort,
                            
                          userdaten.age,
                            
                          userdaten.city,
                            
                          userdaten.statuss,
                            
                          userdaten.userid
                          FROM
                            login
                            LEFT JOIN userdata ON login
                          .id userdaten.userid 
                          Ich empfehle dir aber dich auch nochmal intensiv mit SQL zu beschäftigen.

                          Kommentar


                          • #14
                            Ja sql ist schon nicht leicht ^^

                            Bin aber froh endlich einen Schritt weiter zu sein. Vielen Dank nochmal

                            Kommentar


                            • #15
                              Leicht kann ja jeder.

                              Aber Zaubern ist es auch nicht!

                              Kommentar

                              Lädt...
                              X