Ankündigung

Einklappen
Keine Ankündigung bisher.

Komma im Inhalt eines ENUM Feldes!

Einklappen

Neue Werbung 2019

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

  • #46
    Tabelle 1:

    ID | ... daten ... | id_tab2

    Tabelle 2:

    ID | ... daten

    so wenn du darauf jetzt die Abfrage machst:

    Code:
    SELECT * FROM tabelle1 LEFT JOIN tabelle2 ON tabelle1.id_tab2 = tabelle2.ID
    dann weisste bescheid

    In Tabelle2 würden dann deine Auswahlmöglichkeiten stehen

    Kommentar


    • #47
      Ach phpMyAdmin! Hab mich die ganze Zeit gefragt, was PMA für eine Abkürzung ist. LOL

      @Christin: Das sagt noch nicht allzuviel aus. Aber naja. Es gäbe bspw. die o.g. Möglichkeit, weitere Tabellen zu definieren, die vom Datenbestand aus referenziert werden. Bspw.

      Code:
      Personendaten
      Name CHAR | Alter INT | Geschlecht ENUM('männlich' , 'weiblich')
      würde zu

      Code:
      Personendaten
      Name CHAR | Alter INT | GeschlechtID INT
      Code:
      Geschlechter
      INT ID | CHAR Geschlecht
      1 | 'weiblich'
      2 | 'männlich'
      Das Select würde 'Geschlechter' auslesen und darstellen, aber nur die ID der Auswahl in 'Personendaten' eintragen.
      Neu wirds beim Auslesen - wird wird ein sogenannter JOIN verwendet. Nähres dazu im Mysql Manual.
      [COLOR="#F5F5FF"]--[/COLOR]
      [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
      [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
      [COLOR="#F5F5FF"]
      --[/COLOR]

      Kommentar


      • #48
        Super! Vielen Dank für die Hilfe! Ich versuche es gleich mal umzusetzen. Trotzdem noch die eine oder andere Frage: Welchen Feldtyp in der Tabelle 1 nehme ich denn für das Feld, das später einmal die Inhalte für die Tabelle 2 aufnehmen soll? Ist das Egal oder hängt das von den Inhalten der Tabelle 2 ab? Dann wäre mir ja VARCHAR(12 am liebsten...
        sigpic

        ··· Das Leben ist zu kurz für ein langes Gesicht! ···

        Kommentar


        • #49
          Je nach Anwendung. Für den immer nötigen Schlüssel (ID) zur Referenzierung in beiden Tabellen sinnvollerweise ein Integer (hier ruhig eine großzügige Analyse aufstellen, welches Integer genug Werte bietet, jeder Wert steht ja für einen möglichen Eintrag), für den Rest bist Du frei. Kann man schlimmstenfalls auch noch ändern.
          [COLOR="#F5F5FF"]--[/COLOR]
          [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
          [COLOR="#F5F5FF"]
          --[/COLOR]

          Kommentar


          • #50
            Es wird nichts übernommen, du verbindest lediglich die beiden Tabellen miteinander. Datentyp einer ID ist für gewöhnlich INT und was du dahinter in Tabelle2 für wirre Datentypen reinhaust ist total egal.

            Kommentar


            • #51
              @CYCAP: Dein Code, der die Beziehung herstellt: muß der nur einmal gesetzt werden und dann bleibt bis auf weiteres die Beziehung bestehen?
              sigpic

              ··· Das Leben ist zu kurz für ein langes Gesicht! ···

              Kommentar


              • #52
                Zitat von samlowry Beitrag anzeigen
                @CYCAP: Dein Code, der die Beziehung herstellt: muß der nur einmal gesetzt werden und dann bleibt bis auf weiteres die Beziehung bestehen?
                Den brauchst du immer wenn du die Daten zusammen abrufen willst, das ersetzt praktisch SELECT blubb FROM tabelle1

                Kommentar


                • #53
                  Zitat von cycap Beitrag anzeigen
                  Den brauchst du immer wenn du die Daten zusammen abrufen willst, das ersetzt praktisch SELECT blubb FROM tabelle1
                  Is jetzt nicht wahr, oder? Ich habe schon über 1200 Dateien erzeugt und muß die nun alle ändern? Kann man denn nicht (so wie in ACCESS mööglich) eine Beziehung einmal definieren und die bleibt bestehen?
                  sigpic

                  ··· Das Leben ist zu kurz für ein langes Gesicht! ···

                  Kommentar


                  • #54
                    da würde die evtl. ein VIEW helfen, aber das ist schon wieder ein gaaaanz anderes Thema

                    Kommentar


                    • #55
                      Zitat von nikosch77-new Beitrag anzeigen
                      Du wirst Dir selbst denken, was für ein Argument bei Daten wie 'Geschlecht' kommen könnte, oder?
                      Und irgendwann kommt der Chef und meint, da wir unsere User auch anonym auswerten möchten benötige ich noch die auswahl "nicht angegeben" ... und schon hast du einen weiteren Eintrag

                      Aber ich glaub das führt hier auch schon wieder in Diskussionen die man so oder so auslegen kann ENUM kann man nutzen, muss man aber nicht da es Alternativen gibt die eine Erweiterbarkeit bieten.

                      Und @samlowry: Weine hässliche Lösung wäre jetzt anstatt die ID des Eintrages der zweiten Tabelle als Referenz zu speichern könntest du auch direkt die Daten die der User ausgewählt hat in seinem Eintrag speichern. Das würde zwar etwas der Normalisierung widersprechen, würde aber eine Umstrukturierung aller Dateien vermeiden.

                      Kommentar


                      • #56
                        Wenn ich das richtig verstanden habe:

                        1.) Meine Haupttabelle heißt: Elektromotore

                        2.) Innhalb dieser Tabelle gibt es ein VARCHAR-Feld (ohne Inhalt?) mit Namen: Datensatz_Bauform

                        3.) Meine Wertetabelle heißt: Bauform

                        4.) Beide Tabellen haben schon eine eindeutige ID. Die heißt bei mir aber Datensatz

                        Müßte dann der ehemalige Code:

                        Code:
                        
                        $res= mysql_query("SELECT * FROM Elektromotore");
                        
                        So aussehen:

                        Code:
                        
                        $res= mysql_query("SELECT * FROM Elektromotore LEFT JOIN Bauform ON Elektromotore.Datensatz_Bauform = Bauform.Datensatz ");
                        
                        Habe ich das richtig verstanden?

                        Gruß,
                        Christian
                        sigpic

                        ··· Das Leben ist zu kurz für ein langes Gesicht! ···

                        Kommentar


                        • #57
                          Jop

                          Kommentar


                          • #58
                            Datensatz_Bauform sollte allerdings ein Integer Feld sein da ja "Datensatz" also die ID der Tabelle "Bauform" ein Integer ist. Das Feld Datensatz_Bauform soll ja auf die ID des Eintrages in der Tabelle Bauform zeigen. Daher müssen die Werte übereinstimmen. Also beide male Integer.

                            Kommentar


                            • #59
                              Das wars für heute...!

                              O.K., wenn ich das jetzt mal ausprobiere und alles funzt, wäre das super genial!

                              Aber: was ist denn mit dem UPDATE und dem SET der Tabellen? Wie kriege ich das denn hin? Worauf muß ich denn da achten?

                              Naja, ich denke, ich muß für die heutige Leistung, die ich kostenlos hier in diesem Forum erhalten habe, sehr dankbar sein!

                              Vielleicht darf ich mich morgen noch mal vertrauensvoll an Euch wenden…?

                              Vielen Dank auf jeden Fall an nikosch77-new, Flor1an und cycap,
                              Tschö für heute,
                              Christian
                              sigpic

                              ··· Das Leben ist zu kurz für ein langes Gesicht! ···

                              Kommentar


                              • #60
                                Um einen neuen Wert einzutragen kannst du dein Dropdown (oder Selectfeld) durch die Einträge in "Bauform" füllen. Also einfach SELECT * FROM Bauform und dass dann in deine Dropdown.

                                Als Wert den das Dropdownfeld an das Skript übergibt sollte die ID (Datensatz) übergeben werden. Jetzt speicherst du einfach bei deinem Eintrag der hinzugefügt wird in die Spalte Datensatz_Bauform die ID die durch das Dropdown übergeben wird. Dadurch hast du diese Beziehung zur Bauform Tabelle hergestellt.

                                Beim Bearbeiten funktioniert das natürlich genau so.

                                Kommentar

                                Lädt...
                                X