2 Datenbanken erstellen

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

  • 2 Datenbanken erstellen

    Hallo,

    ich würde gerne in einem Script zwei Datenbanken nacheinander erstellen. Die im Script erste Datenbank wird immer erstellt und die zweite wird dann nicht mehr erstellt.

    Habt ihr ein Tip?

    PHP-Code:
    $query2 "CREATE TABLE union
            (
            id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
            uniname varchar(33) NOT NULL default '',
              unikuerzel varchar(32) NOT NULL default '',
              farbe1 varchar(32) NOT NULL default '0',
              farbe2 varchar(32) NOT NULL default '0',
              farbe3 varchar(32) NOT NULL default '0',
              farbe4 varchar(32) NOT NULL default '0',
              bildlink varchar(32) NOT NULL default '0',
              )"
    ;
    $sql4 mysql_query($query2) or die("Die Datenbank union 
                 konnte nicht angelegt werden"
    );
    $query1 "CREATE TABLE users
            (
            id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
            user varchar(33) NOT NULL default '',
              pass varchar(32) NOT NULL default '',
              adminberechtigung varchar(32) NOT NULL default '0',
              )"
    ;
    $sql3     mysql_query($query1) or die("Die Datenbank users
                   konnte nicht angelegt werden"
    ); 

  • #2
    Welche Tabelle kann nicht erstellt werden?

    Wenn es der union-table ist denk ich ist das kein Wunder, weil union ein SQL-Befehl ist und damit reserved.

    Btw, du erstellst damit nicht 2 Datenbanken sondern 2 Tabellen. Außerdem würde ich an deiner Stelle die Variablen nicht einfach $query4 oder $sql1 nennen, da blickst du nachher garnicht mehr durch!

    Kommentar


    • #3
      OmG! Lies die regeln und befolge sie. ganz speziell im zusammenhang mit mysql_error()

      Kommentar


      • #4
        so ich habe es umbenannt.
        aber die zweite tabelle, sorry das ich vorhin Datenbank gesagt habe, wird immer noch nicht erstellt.
        Und jetzt wird noch nicht mal ein Eintrag in die erste Tabelle gemacht.


        PHP-Code:
        $queryusers "CREATE TABLE users
                    (
                    id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
                                user varchar(33) NOT NULL default '',
                      pass varchar(32) NOT NULL default '',
                      adminberechtigung varchar(32) NOT NULL default '0',
                      );
        $sqlusers = mysql_query($queryusers) or die("<center><b>Die Datenbank
        users konnte nicht angelegt werden
        </b></center>");
        $queryallianz = "CREATE TABLE allianz
                    
        (
                    
        id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
                                
        uniname varchar(33NOT NULL default '',
                      
        unikuerzel varchar(32NOT NULL default '',
                      
        farbe1 varchar(32NOT NULL default '0',
                      
        farbe2 varchar(32NOT NULL default '0',
                      
        farbe3 varchar(32NOT NULL default '0',
                      
        farbe4 varchar(32NOT NULL default '0',
                      
        bildlink varchar(32NOT NULL default '0',
                      )
        ";
        $sqlallianz     = mysql_query($queryallainz) or die("<center><b>Die  Datenbank
        allianz konnte nicht angelegt werden
        </b></center>");
        if (
        $sqle = @mysql_query("INSERT INTO users SET user '$adminname'") 
        and (
        $status == 'Daten abschicken'))
                    {
                        echo "
        <center><b>Der User wurde erfolgreich angelegt.</b></center>\n";
                        echo "
        <center><b><a href='index.php'>Indexseite</a></b></center>";
                    }
                else
                    {
                        echo "
        <center><b>Der User konnt nicht angelegt werden</b></center>\n";
                        echo "
        <center><b>Bitte füllen Sie das Formular nochmal aus.</b></center>";
                    } 
        Zuletzt geändert von Snaq; 23.05.2006, 19:02.

        Kommentar


        • #5
          Original geschrieben von TobiaZ
          OmG! Lies die regeln und befolge sie. ganz speziell im zusammenhang mit mysql_error()
          http://www.php-resource.de/forum/sho...threadid=50454 aber z.z.

          Kommentar


          • #6
            joa okay,
            bei mysql_error() kommt:
            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 ')' at line 11

            Zeile 11 und Umgebung:
            PHP-Code:
            <html>
            <
            head>
            <
            title>Membertool Konfiguration</title>
            <
            link rel="stylesheet" type="text/css" href="style.css">
            </
            head>
            <
            body bgcolor="#69655D">
            <
            center>
            <
            b><u>Membertool Konfiguration</u></b>
            <
            br>
            <
            br>
            <
            form method="post" action="install.php">
              <
            table border="0" width="400">
                <
            tr>
            ....... 
            wie gesagt die erste wird erstellt (tabelle users) und die zweite (tabelle allianz, habe ich umbenannt um da fehlern zu entgehen) wird nicht mehr erstellt.

            jetzt der hauptquelltext

            PHP-Code:
            include("connect.inc.php");
            $sqldropusers    mysql_query("DROP TABLE IF EXISTS `users`") or die(mysql_error());
            $sqldropallianz    mysql_query("DROP TABLE IF EXISTS `allianz`") or die(mysql_error());
            $queryusers     "CREATE TABLE users
                        (
                        id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
                        user varchar(33) NOT NULL default '',
                          pass varchar(32) NOT NULL default '',
                          adminberechtigung varchar(32) NOT NULL default '0',
                          )"
            ;
            $sqlusers       mysql_query($queryusers) or die(mysql_error());
            $queryallianz     "CREATE TABLE allianz
                        (
                        id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
                        uniname varchar(33) NOT NULL default '',
                          unikuerzel varchar(32) NOT NULL default '',
                          farbe1 varchar(32) NOT NULL default '0',
                          farbe2 varchar(32) NOT NULL default '0',
                          farbe3 varchar(32) NOT NULL default '0',
                          farbe4 varchar(32) NOT NULL default '0',
                          bildlink varchar(32) NOT NULL default '0',
                          )"
            ;
            $sqlallianz     mysql_query($queryallianz) or die(mysql_error()); 
            habt ihr lösungsvorschläge?

            Kommentar


            • #7
              das letzte komma vor ) wegmachen

              PHP-Code:
              bildlink varchar(32NOT NULL default '0' -->,<--
                            )
              "; 


              An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

              Kommentar


              • #8
                Original geschrieben von Snaq
                Zeile 11 und Umgebung:
                Du nimmst doch nicht wirklich an, dass sich MySQL-Fehlermeldungen auf deinen PHP-Code beziehen ...?
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Ich hätte auch gesagt das letzte Komma muss weg, aber wenn man sich deinen ersten SQL Befehl ansieht findet sich auch da der Kommafehler, der zwar definitiv ein Fehler ist, aber ka warums dann beim ersten funktionieren sollte.

                  Mein Versuch wäre mal zu gucken ob du die zweite Tabelle erstellen kannst wenn du sie vor der User-table erstellst, und wie gesagt die Anführungsstriche vor dem schließenden ) zu killen

                  Kommentar


                  • #10
                    würd auch nen ; am ende des query machen! ka ob das hier mit muss, aber nen select funzt ohne ja auch net!

                    Kommentar


                    • #11
                      Original geschrieben von PHP-Desaster
                      würd auch nen ; am ende des query machen! ka ob das hier mit muss, aber nen select funzt ohne ja auch net!
                      Obwohl das Manual explizit empfiehlt, Queries die mit mysql_query() abgesetzt werden, nicht mit einem Semikolon abzuschließen ...?
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar

                      Lädt...
                      X