MariaDB - Tabellen erstellen

In diesem Kapitel erfahren Sie, wie Sie Tabellen erstellen. Bestimmen Sie vor dem Erstellen einer Tabelle zunächst deren Namen, Feldnamen und Felddefinitionen.

Es folgt die allgemeine Syntax für die Tabellenerstellung:

CREATE TABLE table_name (column_name column_type);

Überprüfen Sie den Befehl zum Erstellen einer Tabelle in der PRODUCTS-Datenbank.

databaseproducts_ tbl(
   product_id INT NOT NULL AUTO_INCREMENT,
   product_name VARCHAR(100) NOT NULL,
   product_manufacturer VARCHAR(40) NOT NULL,
   submission_date DATE,
   PRIMARY KEY ( product_id )
);

Im obigen Beispiel wird "NOT NULL" als Feldattribut verwendet, um Fehler zu vermeiden, die durch einen Nullwert verursacht werden. Das Attribut "AUTO_INCREMENT" weist MariaDB an, den nächsten verfügbaren Wert zum ID-Feld hinzuzufügen. Das Schlüsselwort Primärschlüssel definiert eine Spalte alsprimary key. Mehrere durch Kommas getrennte Spalten können einen Primärschlüssel definieren.

Die beiden Hauptmethoden zum Erstellen von Tabellen sind die Verwendung der Eingabeaufforderung und eines PHP-Skripts.

Die Eingabeaufforderung

Verwenden Sie den Befehl CREATE TABLE, um die Aufgabe wie unten gezeigt auszuführen.

root@host# mysql -u root -p
Enter password:*******
mysql> use PRODUCTS;
Database changed
mysql> CREATE TABLE products_tbl(
   -> product_id INT NOT NULL AUTO_INCREMENT,
   -> product_name VARCHAR(100) NOT NULL,
   -> product_manufacturer VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( product_id )
   -> );
mysql> SHOW TABLES;
+------------------------+
| PRODUCTS               |
+------------------------+
| products_tbl           |
+------------------------+

Stellen Sie sicher, dass alle Befehle mit einem Semikolon abgeschlossen sind.

PHP Tabellenskript erstellen

PHP bietet mysql_query()zur Tabellenerstellung. Das zweite Argument enthält den erforderlichen SQL-Befehl -

<html>
   <head>
      <title>Create a MariaDB Table</title>
   </head>

   <body>
      <?php
         $dbhost = 'localhost:3036';
         $dbuser = 'root';
         $dbpass = 'rootpassword';
         $conn = mysql_connect($dbhost, $dbuser, $dbpass);
      
         if(! $conn ){
            die('Could not connect: ' . mysql_error());
         }
         echo 'Connected successfully<br />';
         
         $sql = "CREATE TABLE products_tbl( ".
            "product_id INT NOT NULL AUTO_INCREMENT, ".
            "product_name VARCHAR(100) NOT NULL, ".
            "product_manufacturer VARCHAR(40) NOT NULL, ".
            "submission_date DATE, ".
            "PRIMARY KEY ( product_id )); ";
      
         mysql_select_db( 'PRODUCTS' );
         $retval = mysql_query( $sql, $conn );
      
         if(! $retval ) {
            die('Could not create table: ' . mysql_error());
         }
         echo "Table created successfully\n";
         
         mysql_close($conn);
      ?>
   </body>
</html>

Bei erfolgreicher Tabellenerstellung wird die folgende Ausgabe angezeigt:

mysql> Table created successfully