MariaDB - Abfrage einfügen
In diesem Kapitel erfahren Sie, wie Sie Daten in eine Tabelle einfügen.
Das Einfügen von Daten in eine Tabelle erfordert den Befehl INSERT. Die allgemeine Syntax des Befehls lautet INSERT, gefolgt von Tabellenname, Feldern und Werten.
Überprüfen Sie die unten angegebene allgemeine Syntax -
INSERT INTO tablename (field,field2,...) VALUES (value, value2,...);
Die Anweisung erfordert die Verwendung von einfachen oder doppelten Anführungszeichen für Zeichenfolgenwerte. Weitere Optionen für die Anweisung sind die Anweisungen "INSERT ... SET", die Anweisungen "INSERT ... SELECT" und verschiedene andere Optionen.
Note - Die in der Anweisung angezeigte Funktion VALUES () gilt nur für INSERT-Anweisungen und gibt NULL zurück, wenn sie an anderer Stelle verwendet wird.
Für die Ausführung des Vorgangs stehen zwei Optionen zur Verfügung: Verwenden Sie die Befehlszeile oder ein PHP-Skript.
Die Eingabeaufforderung
An der Eingabeaufforderung gibt es viele Möglichkeiten, einen Auswahlvorgang auszuführen. Eine Standardaussage ist unten angegeben -
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) | | | | |
+-------------+-------------+------+-----+---------+-------+
Sie können mehrere Zeilen einfügen -
INSERT INTO products VALUES (1, “first row”), (2, “second row”);
Sie können auch die SET-Klausel verwenden -
INSERT INTO products SELECT * FROM inventory WHERE status = 'available';
PHP-Einfügungsskript
Verwenden Sie dieselbe Anweisung "INSERT INTO ..." in einer PHP-Funktion, um die Operation auszuführen. Sie werden die verwendenmysql_query() wieder funktionieren.
Überprüfen Sie das folgende Beispiel -
<?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);
}
?>
Nach erfolgreicher Dateneinfügung wird die folgende Ausgabe angezeigt:
mysql> Entered data successfully
Sie werden auch Validierungsanweisungen mit Einfügeanweisungen zusammenarbeiten, z. B. die Überprüfung, um die korrekte Dateneingabe sicherzustellen. MariaDB enthält zu diesem Zweck eine Reihe von Optionen, von denen einige automatisch sind.