ilch Forum » Allgemein » HTML, PHP, SQL,... » SQL Datenbanken zusammen fügen

Geschlossen
  1. #1
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    Hallo Zusammen,

    gibt es ein Programm, bevorzugt Windows, mit dem ich 2 Datenbanken bearbeiten kann?
    Ich möchte die Benutzer von Ilch 1 auf Ilch 2 transferieren. Dafür benötige ich aber immer
    nur gewisse Datensätze von Ilch 1, die ich unter Ilch 2 in die Datenbank einfügen brauche.
    Am besten wäre Drag&Drop...

    Ich hoffe, Ihr versteht mich lächeln


    verwendete ilch Version: 2.1.x

    betroffene Homepage: externer Link
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    corian Entwickler
    Registriert seit
    16.06.2011
    Beiträge
    1.096
    Beitragswertungen
    122 Beitragspunkte
    Heidi SQL würde funktionieren.
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    Schreib dir doch ein PHP script wo du die benötigten Daten ausgeben lässt und füge diese dann über phpmyadmin ein, dauert alles keine 5 Minuten.
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    mein Problem ist, dass ich alles "learning by doing" mache.
    Deshalb suche ich einfache Möglichkeiten
    Obwohl, PHPmyAdmin hört sich gut an


    Zuletzt modifiziert von Hansa am 23.05.2019 - 21:49:03
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    Also eine Ausgabe zu machen ist ja wirklich eigentlich was ganz simples hier ein kleines Beispiel :
    <?php
    $con = mysqli_connect("Hostname", "Username", "passwort", "databasename");
    if (mysqli_connect_errno())
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    $query = "SELECT id, name FROM ic1_user";
    
    $ergebnis = mysqli_query($con, $query);
    while($row = mysqli_fetch_object($ergebnis))
        { 
            echo $row->id.', '.$row->name.'<br>'; 
        } 
    ?>


    in dem fall würdest du aus der Tabelle ic1_user alle id´s und die dazu gehörigen namen ausgeben, wenn du dann die Ausgabe etwas anpassen würdest von der Struktur her könntest du diese nutzen und in die neue Datenbank kopieren.

    Du müsstest dir vor augen eine Insert query vorstellen z.b :

    INSERT INTO users (id, name) values ('id1', 'name1'), ('id2', 'name2');


    dieser abteil "('id1', 'name1')" stellt quasi die ausgabe der While Schleife da.

    Natürlich wird das nicht mit allem Funktionieren wie passwörter etc. da wie schon oft erwähnt wurde andere verschlüsslung etc.
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    1 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    Danke, das werde ich mal bei Zeiten mir anschauen.
    Ich kann also den Teil "INSERT INTO"
    unter echo $row->id.', '.$row->name.'<br>
    setzen?
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    Ne das müsste dann so ungefähr aussehen:

    <?php
    $con = mysqli_connect("Hostname", "Username", "passwort", "databasename");
    if (mysqli_connect_errno())
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    $query = "SELECT id, name FROM ic1_user";
    echo 'INSERT INTO users (id, name) values ';
    $ergebnis = mysqli_query($con, $query);
    while($row = mysqli_fetch_object($ergebnis))
    {
        echo "('$row->id', '$row->name'),<br>";
    }
    echo ';';
    ?>


    beim kopieren der daten müsstest du halt das letzte komma aus der schleife entfernen
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    Das war eine schnelle Antwort.
    Werde ich heute Abend testen.
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    Hallo Nex4T,

    er zeigt mir alles wunderbar an, packt mir nur nichts in die neue Tabelle.
    Welches Komma meinst Du?
    Ich habe
    echo "('$row->id', '$row->name'),<br>";
    dieses Komma gelöscht, aber es passiert nichts...
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    Lösch mal nichts und poste mal diese ausgabe die dir wiedergegeben wird
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    Das ist ein Teil davon

    INSERT INTO test_users (id, name, email) values ('1', 'Hansa', 'xxx@codev3.de'),
    ('2', 'majorfreim', 'xxx@bluewin.ch'),
    ('3', 'SilentPain', 'xxx@web.de'),
    ('4', 'ze_one', 'xxx@gmail.com'),
    ...
    ('101', 'miyawe', 'xxx@gmail.com'),
    ;

    Oder liegt es daran, dass ich vorher die test_users geleert habe?


    Zuletzt modifiziert von Hansa am 24.05.2019 - 21:46:03
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    genau siehe ('4', 'ze_one', 'xxx@gmail.com'), das ist deine Letzte ausgabe aus Schleife dort das , mit einem ; ersetzen und dannin die Datenbank gehen, code Kopieren und über phpmyadmin die sql funktion benutzen.

    so müsste Struktur aussehen.
    INSERT INTO test_users (id, name, email) values ('1', 'Hansa', 'xxx@codev3.de'), 
    ('2', 'majorfreim', 'xxx@bluewin.ch'), 
    ('3', 'SilentPain', 'xxx@web.de'), 
    ('4', 'ze_one', 'xxx@gmail.com');


    mit dem komma sagst du meistens das noch etwas danach kommt, das semikolon beendet eigentlich immer alles.
    Sofern die Tabelle test_users existiert mit der struktur -> id, name, email sollte es ohne Probleme Funktionieren, du musst noch darauf achten das ein User mit der selben id natürlich nicht angelegt werden kann, da jede id Unique ist.

    Ich hab jetzt nur die ersten 4 ausgaben berücksichtigt, ist aber das selbe Prinzip mit mehr.


    Zuletzt modifiziert von Nex4T am 24.05.2019 - 21:51:22
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    ich hatte leider den Schluss vergessen und meine Post oben noch einmal ergänzt.
    Beim letzten Datensatz steht ein ";"

    EDIT, jetzt sehe ich, was Du meinst lächeln


    Zuletzt modifiziert von Hansa am 24.05.2019 - 21:52:35
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    genau ein komma und semikolon zusammen wird nicht funktionieren, falls doch ein Problem ensteht poste doch mal die Fehlermeldung.
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    Hansa Mitglied
    Registriert seit
    07.05.2010
    Beiträge
    61
    Beitragswertungen
    2 Beitragspunkte
    Danke Dir.
    Es hat geklappt. Ich dachte immer, das Script macht es von alleine...
    Spitze!!!
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    So jetzt hast du eine eigene Ausgabe aus der Datenbank geschafft, diese kann natürlich verbessert werden, spezifischer genutzt werden und wenn du dich noch mehr mit SQL und PHP beschäftigst kannst du bald deine eigenen Scripte schreiben. Der wille zählt zwinker ist ja schon mal Super das es geklappt hat, weiter so!
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    1 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    Outi77 Mitglied
    Registriert seit
    31.03.2013
    Beiträge
    1.337
    Beitragswertungen
    143 Beitragspunkte
    Tolle Hilfe von Nex4T, dafür und für alle anderen fleißigen Helferlein mal ein großes DANKESCHÖN!!!
    Die richtige Formulierung eines Problems ist nicht selten bereits die halbe Lösung.
    »Albert Einstein«
    1 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten