MariaDB - Insérer une requête

Dans ce chapitre, nous allons apprendre à insérer des données dans un tableau.

L'insertion de données dans une table nécessite la commande INSERT. La syntaxe générale de la commande est INSERT suivi du nom de la table, des champs et des valeurs.

Revoyez sa syntaxe générale donnée ci-dessous -

INSERT INTO tablename (field,field2,...) VALUES (value, value2,...);

L'instruction nécessite l'utilisation de guillemets simples ou doubles pour les valeurs de chaîne. Les autres options de l'instruction incluent les instructions «INSERT ... SET», les instructions «INSERT ... SELECT» et plusieurs autres options.

Note - La fonction VALUES () qui apparaît dans l'instruction, s'applique uniquement aux instructions INSERT et renvoie NULL si elle est utilisée ailleurs.

Deux options existent pour effectuer l'opération: utiliser la ligne de commande ou utiliser un script PHP.

L'invite de commande

À l'invite, il existe de nombreuses façons d'effectuer une opération de sélection. Une déclaration standard est donnée ci-dessous -

belowmysql>
INSERT INTO products_tbl (ID_number, Nomenclature) VALUES (12345,“Orbitron 4000”);
mysql> SHOW COLUMNS FROM products_tbl;
+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| ID_number   | int(5)      |      |     |         |       |
| Nomenclature| char(13)    |      |     |         |       |
+-------------+-------------+------+-----+---------+-------+

Vous pouvez insérer plusieurs lignes -

INSERT INTO products VALUES (1, “first row”), (2, “second row”);

Vous pouvez également utiliser la clause SET -

INSERT INTO products SELECT * FROM inventory WHERE status = 'available';

Script d'insertion PHP

Utilisez la même instruction «INSERT INTO ...» dans une fonction PHP pour effectuer l'opération. Vous utiliserez lemysql_query() fonctionner à nouveau.

Revoyez l'exemple ci-dessous -

<?php
   if(isset($_POST['add'])) {
      $dbhost = 'localhost:3036';
      $dbuser = 'root';
      $dbpass = 'rootpassword';
      $conn = mysql_connect($dbhost, $dbuser, $dbpass);

      if(! $conn ) {
         die('Could not connect: ' . mysql_error());
      }

      if(! get_magic_quotes_gpc() ) {
         $product_name = addslashes ($_POST['product_name']);
         $product_manufacturer = addslashes ($_POST['product_name']);
      } else {
         $product_name = $_POST['product_name'];
         $product_manufacturer = $_POST['product_manufacturer'];
      }
      $ship_date = $_POST['ship_date'];
      $sql = "INSERT INTO products_tbl ".
         "(product_name,product_manufacturer, ship_date) ".
         "VALUES"."('$product_name','$product_manufacturer','$ship_date')";

      mysql_select_db('PRODUCTS');
      $retval = mysql_query( $sql, $conn );
      
      if(! $retval ) {
         die('Could not enter data: ' . mysql_error());
      }

      echo "Entered data successfully\n";
      mysql_close($conn);
   }
?>

Lors de l'insertion de données réussie, vous verrez la sortie suivante -

mysql> Entered data successfully

Vous collaborerez également des déclarations de validation avec des instructions d'insertion telles que la vérification pour garantir une saisie correcte des données. MariaDB inclut un certain nombre d'options à cet effet, dont certaines sont automatiques.