Paul: Mehrere SQL Anweisungen nacheinander

Hallo liebe Forum-User,

ich stehe vor folgender Problematik.
Also ich habe ca. 10 - 12 SQL Dateien, die ich gerne irgendwie in eine Datei bekommen würde, gibt es die Möglichkeit, mehrere SQL-Befehle nacheinander durchlaufen zu lassen ?

Danke.

  1. Hallo liebe Forum-User,

    ich stehe vor folgender Problematik.
    Also ich habe ca. 10 - 12 SQL Dateien, die ich gerne irgendwie in eine Datei bekommen würde, gibt es die Möglichkeit, mehrere SQL-Befehle nacheinander durchlaufen zu lassen ?

    Ich verstehe dein Problem nicht.

    Was verstehst du unter "SDL-Dateien"? Datenbank-Exporte? Dann sind in den Dateien doch sowieso mehrere SQL-Befehle enthalten, die du separieren und einzeln zur Datenbank schicken mußt. Wo ist dann das Problem, die einzelnen Dateien nacheinander abzuarbeiten?

    Oder hab ich dich falsch verstanden?

    1. Ich habe mich vielleicht etwas unglücklich ausgedrückt.

      Also ich habe mehrere SQL Befehle die ich gerne nacheinander ablaufen lassen würde.
      Nun ist die Frage, wie ich so etwas bewerkstelligen kann.

      1. Also ich habe mehrere SQL Befehle die ich gerne nacheinander ablaufen lassen würde.
        Nun ist die Frage, wie ich so etwas bewerkstelligen kann.

        mysql_query("SQL1");
        mysql_query("SQL2");
        mysql_query("SQL3");

        Vollkommen banal eigentlich.

        Alternativ gibts für moderne PHPs mit modernen MySQLs auch noch mysqli_multi_query(); Das ändert aber nichts daran, dass die Befehle einzeln nacheinander ausgeführt werden.

        1. Dankeschön,

          ich habe noch eine Frage, kann es sein, dass Oracle mit folgender Funktion Probleme hat? (MySQL geht es)

          SELECT
          count(if(gehalt<300,1,NULL)) as Gehalt_300
          From
          t_mitarbeiter

          Es kommt immer die Fehlermeldung:

          ORA-00907: missing right parenthesis

          1. yo,

            ich habe noch eine Frage, kann es sein, dass Oracle mit folgender Funktion Probleme hat? (MySQL geht es)

            oracle <> mysql

            SELECT COUNT(CASE WHEN gehalt < 300 THEN 1 ELSE NULL END)
            From
            t_mitarbeiter

            Ilja

            1. Wow, es klappt.

              Ilja du bist wirklich eine Experte in deinem Gebiet.
              Weißt du vielleicht, wie ich mehrere SQl Anweisungen nacheinander durchlaufen lassen kann?

              SQL 1;
              SQL 2;
              SQL n;
              ....

              Danke nochmal

              1. yo,

                Weißt du vielleicht, wie ich mehrere SQl Anweisungen nacheinander durchlaufen lassen kann?

                so wie die anderen gesagt haben, nacheinander ausführen, nur dass in php meines wissen für unterschiedliche dbms unterschiedliche funktionen benutzt werden. wenn du also mysql anspricht, musst du eine andere funktion aufrufen als bei oracle.

                Ilja

        2. ich habe gerade mal:
          mysql_query("SQL1");
          mysql_query("SQL2");

          ausprobiert, aberich bekomme mit der Oracle 10g xe immer Fehler:
          ORA-00900: invalid SQL statement

          KAnn es sein, dass dies nur für PHP ist

          1. ich habe gerade mal:
            mysql_query("SQL1");
            mysql_query("SQL2");

            ausprobiert, aberich bekomme mit der Oracle 10g xe immer Fehler:
            ORA-00900: invalid SQL statement

            KAnn es sein, dass dies nur für PHP ist

            Nirgendwo hast du bisher gesagt, dass du mit Oracle arbeitest. Woher sollte ich das also wissen. Auch die Skriptsprache hast du bisher verheimlicht.

            Logisch, dass du mit PHP-Funktionen für die MySQL-Datenbank (das sind Annahmen, die auf die meisten der Fragen ohne Angaben hier korrekt zutreffen) nur glücklich wirst, wenn du PHP und MySQL einsetzt - nicht aber, wenn du kein PHP und kein MySQL einsetzt.

            1. Entschuldige bitte.

              Also ich arbeite einmal mit MySQl und ein anderes mal mit Oracle 10 g XE um etwas zu testen.

              Dieses Problem würde ich gerne mit Oracle 10g XE und MySQl Befehl gelöst haben

              1. Also ich arbeite einmal mit MySQl und ein anderes mal mit Oracle 10 g XE um etwas zu testen.

                Dieses Problem würde ich gerne mit Oracle 10g XE und MySQl Befehl gelöst haben

                MySQL und Oracle nutzen verschiedene PHP-Befehlserweiterungen (mysql/mysqli und oci8). Wenn du "einen für alle" haben willst, mußt du dich auf ODBC beschränken, oder die PHP-Extension PDO benutzen.

                Aber beide haben das gleiche Prinzip: Mehrere SQL-Befehle werden durch mehrere Befehlsaufrufe des Query-, Execute- oder sonstwie das SQL auslösende Kommandos ausgeführt.

  2. Hallo Paul,

    Also ich habe ca. 10 - 12 SQL Dateien, die ich gerne irgendwie in eine Datei bekommen würde, gibt es die Möglichkeit, mehrere SQL-Befehle nacheinander durchlaufen zu lassen ?

    das kann so ziemlich jedes mir bekannte Datenbankmanagementsystem (DBMS).
    Natürlich gibt es Clientanwendungen, die sowas nicht können, vielleicht ist das Dein Problem.

    Welches DBMS verwendest Du?
    (Beispiele: MySQL, PostgreSQL, MS SQL-Server, Oracle, DB2, Informix, MS-Access, dBase, SQLite, ...)
    Bitte genaue Version angeben.

    Wie möchtest Du auf Dein DBMS zugreifen?
    Was hast Du versucht?
    Woran bist Du gescheitert?

    "SQL-Dateien" sind einfache Textdateien, die sich normalerweise problemlos zu einer großen Textdatei zusammenfassen lassen. Das konnte sogar MS-DOS. Je nach Inhalt sollte sich dann die große Textdatei vom DBMS abarbeiten lassen, vielleicht gibt es auch ein paar Fehlermeldungen. Ist alles möglich, hängt vom DBMS, Version und Client und nicht zuletzt dem Inhalt der SQL-Dateien ab.

    Freundliche Grüße

    Vinzenz