MariaDB - Créer des tables

Dans ce chapitre, nous allons apprendre à créer des tableaux. Avant de créer une table, déterminez d'abord son nom, les noms de champ et les définitions de champ.

Voici la syntaxe générale pour la création de table -

CREATE TABLE table_name (column_name column_type);

Revoir la commande appliquée à la création d'une table dans la base de données PRODUCTS -

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 )
);

L'exemple ci-dessus utilise «NOT NULL» comme attribut de champ pour éviter les erreurs causées par une valeur nulle. L'attribut «AUTO_INCREMENT» demande à MariaDB d'ajouter la prochaine valeur disponible au champ ID. Le mot-clé clé primaire définit une colonne commeprimary key. Plusieurs colonnes séparées par des virgules peuvent définir une clé primaire.

Les deux principales méthodes de création de tables utilisent l'invite de commande et un script PHP.

L'invite de commandes

Utilisez la commande CREATE TABLE pour effectuer la tâche comme indiqué ci-dessous -

[email protected]# 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           |
+------------------------+

Assurez-vous que toutes les commandes se terminent par un point-virgule.

Script de création de table PHP

PHP fournit mysql_query()pour la création de table. Son deuxième argument contient la commande SQL nécessaire -

<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>

Une fois la création de la table réussie, vous verrez la sortie suivante -

mysql> Table created successfully