Daten aus anderen Tabellen einfügen

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

  • Daten aus anderen Tabellen einfügen

    hey in dem Tuturial
    wird beschrieben wie man daten aus einer Tabelle in eine Andere kopieren kann, das läuft bei mir auch bisher ganz gut
    nun möchte ich aber noch zusätzlich zu dem reinen kopieren der ids von der alten Tabelle in die Tabelle gebaeude,einen extra wert in eine andere Spalte der Tabelle gebaeude einfügen


    nun kommt bei mir aber die Fehlermeldung
    Code:
    #1136 - Column count doesn't match value count at row 1
    habe folgende abfrage eingegeben
    Code:
    INSERT INTO si_gebaeude (besitzer_id)
    VALUES
    ('SELECT id FROM jos_users WHERE id=63','rfem');
    nun meine frage, wie muss ich die ABfrage gestalltewn,wenn ich sowohl alte werte übertragen will, als auch neue Werte einfügen will?

    danke schon mal für antworten

  • #2
    Re: Daten aus anderen Tabellen einfügen

    Original geschrieben von JuliusCaesar
    nun möchte ich aber noch zusätzlich zu dem reinen kopieren der ids von der alten Tabelle in die Tabelle gebaeude,einen extra wert in eine andere Spalte der Tabelle gebaeude einfügen
    Einen festen Wert - oder wo her ...?
    nun kommt bei mir aber die Fehlermeldung
    Code:
    #1136 - Column count doesn't match value count at row 1
    habe folgende abfrage eingegeben
    Code:
    INSERT INTO si_gebaeude (besitzer_id)
    VALUES
    ('SELECT id FROM jos_users WHERE id=63','rfem');
    Na ja, das merkst du ja wohl selber, wenn du einfach mal nachzählst, dass das nicht zusammenpasst ...

    (Btw: Möchtest du wirklich den Text 'SELECT id FROM jos_users WHERE id=63' in das Feld id eintragen ...?)
    nun meine frage, wie muss ich die ABfrage gestalltewn,wenn ich sowohl alte werte übertragen will, als auch neue Werte einfügen will?
    So, dass column count und value count zusammenpassen.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Einen festen Wert - oder wo her ...?
      ja genau ein fester Wert z.b rfem
      (Btw: Möchtest du wirklich den Text 'SELECT id FROM jos_users WHERE id=63' in das Feld id eintragen ...?)
      nein, da snicht nur der "normale" insert geht ja mit
      Code:
      INSERT INTO tabelle (id, geb_typ)
      VALUES
      ('1','rfem')
      also habe ich beide Sachen mal kombiniert....


      beide Werte sollen in dieselbe Zeile eingefügt werden in der tabelle gebaeude

      btw:rfem ist eine der Abkürzungen die ich für Gebäude verwende und steht für Roheisenmiene

      Kommentar


      • #4
        Original geschrieben von JuliusCaesar
        ja genau ein fester Wert z.b rfem
        Na dann lasse ihn dir bspw. auch gleich vom SELECT liefern.

        nein, das nicht
        Wenn du kein Textliteral einfügen willst, dann notiere die Anweisung auch nicht als Textiteral.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Na dann lasse ihn dir bspw. auch gleich vom SELECT liefern.
          stimmt das wäre ja auch möglich daran hatte ich gar nicht gedacht
          dann müsste ich aber praktisch alle konstanten in eine extra Tabelle einfügen, ginge das nicht auch leichter?
          (weil es sind ca 30 konstanten für jeweils unterschiedliche abfragen)

          aber wenns nicht geht dann füge ich diese konstanten in eine extra spalte ein

          Kommentar


          • #6
            Original geschrieben von JuliusCaesar
            dann müsste ich aber praktisch alle konstanten in eine extra Tabelle einfügen
            Quark.

            SELECT 5 liefert dir den Wert 5, und SELECT 'xyz' liefert dir den String 'xyz'.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              achso jetzt habe ich verstanden was du meinst
              allerdings weiß ich nicht so recht wo ich das SELECT refem einbringen soll
              Code:
              INSERT INTO si_gebaeude (besitzer_id, geb_typ)
              SELECT id, rfem
              FROM jos_users
              WHERE id = 62
              wenn ich das so mache, geht mysql ja davon aus, dass eine Spalte rfem in der tabelle jos_users existiert,das diese allerdings nicht existiert, kommt ne Fehlermeldung

              nun habe ich mal versucht das SELECT rfem
              wenn ich das SELECT rfem allerdings ganz an den Schluss setzte habe ich ein Syntax Problem...

              viel mehr Möglichkeiten gibts doch nicht......

              danke schonmal für deine bisherige Hilfe

              Kommentar


              • #8
                Original geschrieben von JuliusCaesar
                allerdings weiß ich nicht so recht wo ich das SELECT refem einbringen soll [...]
                wenn ich das so mache, geht mysql ja davon aus, dass eine Spalte rfem in der tabelle jos_users existiert,das diese allerdings nicht existiert, kommt ne Fehlermeldung
                Man, verlange aber bitte nicht auch noch, gefüttert zu werden wie ein Baby - ich habe doch gerade schon ein Beispiel gebracht.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  nein "gefüttert" werden will ich ja auch net^^
                  nur wie du an meinem Status erkennen kannst lerne ich noch nicht allzu lange php
                  und für manche Dinge benötigt man Beispiele und sie nachvollziehen zu können
                  aber naja, danke erstmal für deine Hilfe, werde mal sehen ob ich woanders was finde

                  Kommentar


                  • #10
                    Was willst du denn da noch "woanders finden"?

                    Ich gab dir das Beispiel: Wenn du willst, dass ein SELECT dir den statischen Wert 'xyz' zurückliefert, kannst du einfach SELECT 'xyz' schreiben.

                    Na schön, jetzt willst du nicht 'xyz', sondern 'rfem' zurückgeliefert bekommen - das im Beispiel zu ersetzen, wirst du doch wohl hinkriegen ...?
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      Na schön, jetzt willst du nicht 'xyz', sondern 'rfem' zurückgeliefert bekommen - das im Beispiel zu ersetzen, wirst du doch wohl hinkriegen ...?
                      na zumindest hoffe ich das, werde da morgen nm ein bissel rumprobieren

                      Kommentar

                      Lädt...
                      X