MySQL INSERT INTO-Abfrage: So fügen Sie eine Zeile in eine Tabelle ein (Beispiel)
⚡ Intelligente Zusammenfassung
MySQL Mit INSERT INTO Query werden neue Zeilen in eine Tabelle eingefügt, entweder durch explizite Angabe der Zielspalten oder durch Angabe eines Werts für jede Spalte. Die korrekte Verwendung von Anführungszeichen für Zeichenketten, Zahlen und Datumsangaben entscheidet darüber, ob die gespeicherten Daten vollständig erhalten bleiben.

Was ist EINFÜGEN?
INSERT INSERT Dient zum Speichern von Daten in Tabellen. Der INSERT-Befehl erstellt eine neue Zeile in der Tabelle, um Daten zu speichern. Die Daten werden üblicherweise von Anwendungsprogrammen bereitgestellt, die auf der Datenbank laufen.
Grundlegende Syntax
Schauen wir uns die grundlegende Syntax von INSERT INTO an MySQL Befehl:
INSERT INTO `table_name`(column_1,column_2,...) VALUES (value_1,value_2,...);
HIER KLICKEN
- INSERT INTO `table_name` ist der Befehl, der es sagt MySQL Server, um einer Tabelle mit dem Namen „Tabellenname“ eine neue Zeile hinzuzufügen
- (column_1,column_2,…) gibt die Spalten an, die im neuen aktualisiert werden sollen MySQL Reihe
- VALUES (value_1,value_2,…) gibt die Werte an, die in die neue Zeile eingefügt werden sollen
Beim Bereitstellen der Datenwerte, die in die neue Tabelle eingefügt werden sollen, sollte Folgendes beachtet werden:
- String-Datentypen – alle String-Werte sollten in einfache Anführungszeichen gesetzt werden.
- Numerische Datentypen – alle numerischen Werte sollten direkt angegeben werden, ohne sie in einfache oder doppelte Anführungszeichen zu setzen.
- Datumsdatentypen – schließen Sie Datumswerte in einfache Anführungszeichen im Format „JJJJ-MM-TT“ ein.
Mehrere Zeilen gleichzeitig einfügen
Eine einzelne INSERT-Anweisung kann mehrere Zeilen einfügen. Trennen Sie die einzelnen Wertegruppen durch Kommas. Eine einzige Anweisung ist schneller als mehrere, da der Index nur einmal aktualisiert wird.
INSERT INTO `categories`(`category_name`,`remarks`) VALUES ('Documentary', 'Factual films'), ('Musical', 'Song driven films');
MySQL INSERT INTO Abfragebeispiel
Angenommen, wir haben die folgende Liste neuer Bibliotheksmitglieder, die der Datenbank hinzugefügt werden müssen.
| Ganze Namen | Geburtsdatum | Geschlecht | Physikalische Adresse | Anschrift | Kontakt Nummer | E-Mail Adresse |
|---|---|---|---|---|---|---|
| Leonhard Hofstädter | Männlich | Waldkrone | 0845738767 | |||
| Sheldon Cooper | Männlich | Waldkrone | 0976736763 | |||
| Rajesh Koothrappali | Männlich | Waldkrone | 0938867763 | |||
| Leslie Winkel | 14/02/1984 | Männlich | Waldkrone | 0987636553 | ||
| Howard Wolowitz | 24/08/1981 | Männlich | Süd Park | P.O. Box 14473 | 0987786553 | lwolowitz@email.me |
Wir fügen die Daten zeilenweise ein, beginnend mit Leonard Hofstadter. Die Telefonnummer behandeln wir als numerischen Datentyp und setzen sie nicht in einfache Anführungszeichen.
INSERT INTO `members` (`full_names`,`gender`,`physical_address`,`contact_number`) VALUES ('Leonard Hofstadter','Male','Woodcrest',0845738767);
Durch Ausführen des obigen Skripts wird die 0 aus Leonards Kontaktnummer entfernt, da der Wert als numerisch behandelt wird und eine führende Null keine Bedeutung hat.
Um solche Probleme zu vermeiden, muss der Wert in einfache Anführungszeichen gesetzt werden, wie unten gezeigt.
INSERT INTO `members` (`full_names`,`gender`,`physical_address`,`contact_number`) VALUES ('Sheldon Cooper','Male','Woodcrest', '0976736763');
⚠️ Tipp: Speichern Sie Telefonnummern, Postleitzahlen und ähnliche Kennungen in einer Textspalte wie VARCHAR. Numerische Spalten dürfen keine führende Null enthalten.
Ändern der Spaltenreihenfolge
Das Ändern der Reihenfolge der Spalten hat keine Auswirkungen auf die INSERT-Abfrage in MySQLvorausgesetzt, die richtigen Werte wurden den richtigen Spalten zugeordnet. Die folgende Abfrage verdeutlicht diesen Punkt.
INSERT INTO `members` (`contact_number`,`gender`,`full_names`,`physical_address`) VALUES ('0938867763','Male','Rajesh Koothrappali','Woodcrest');
Bei den obigen Abfragen wurde die Spalte „Geburtsdatum“ übersprungen. Standardmäßig, MySQL Fügt NULL-Werte in Spalten ein, die in der INSERT-Abfrage ausgelassen wurden.
Fügen wir nun den Datensatz für Leslie ein, in dem das Geburtsdatum angegeben ist. Der Datumswert muss in einfache Anführungszeichen gesetzt und im Format „JJJJ-MM-TT“ angegeben werden.
INSERT INTO `members` (`full_names`,`date_of_birth`,`gender`,`physical_address`,`contact_number`) VALUES ('Leslie Winkle','1984-02-14','Male','Woodcrest', '0987636553');
Auslassen der Spaltenliste
Alle oben genannten Abfragen haben die Spalten benannt und ihnen Werte zugeordnet. Wenn wir Werte für ALLE Spalten in der Tabelle angeben, kann die Spaltenliste weggelassen werden. MySQL Abfrage einfügen.
INSERT INTO `members` VALUES (9,'Howard Wolowitz','Male','1981-08-24', 'SouthPark','P.O. Box 4563', '0987786553', 'lwolowitz@email.me');
Lassen Sie uns jetzt die verwenden SELECT-Anweisung Alle Zeilen in der Mitgliedertabelle anzeigen.
SELECT * FROM `members`;
| Mitgliedsnummer | ganze Namen | Geschlecht | Geburtsdatum | physikalische Adresse | Anschrift | Kontaktnummer | |
|---|---|---|---|---|---|---|---|
| 1 | Janet Jones | Weiblich | 21-07-1980 | Erstes Straßengrundstück Nr. 4 | Private Tasche | 0759 253 542 | janetjones@yagoo.cm |
| 2 | Janet Smith Jones | Weiblich | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
| 3 | Robert Phil | Männlich | 12-07-1989 | 3. Straße 34 | NULL | 12345 | rm@tstreet.com |
| 4 | Gloria Williams | Weiblich | 14-02-1984 | 2. Straße 23 | NULL | NULL | NULL |
| 5 | Leonhard Hofstädter | Männlich | NULL | Waldkrone | NULL | 845738767 | NULL |
| 6 | Sheldon Cooper | Männlich | NULL | Waldkrone | NULL | 0976736763 | NULL |
| 7 | Rajesh Koothrappali | Männlich | NULL | Waldkrone | NULL | 0938867763 | NULL |
| 8 | Leslie Winkel | Männlich | 14-02-1984 | Waldkrone | NULL | 0987636553 | NULL |
| 9 | Howard Wolowitz | Männlich | 24-08-1981 | Süd Park | P.O. Box 14473 | 0987786553 | lwolowitz@email.me |
Beachten Sie, dass die Telefonnummer von Leonard Hofstadter, wie vorhergesagt, ihre führende Null verloren hat. Die angegebenen Nummern behalten sie bei.
Einfügen in eine Tabelle aus einer anderen Tabelle
Der INSERT-Befehl kann auch verwendet werden, um Daten aus einer anderen Tabelle in eine Tabelle einzufügen. Die grundlegende Syntax ist wie unten dargestellt.
INSERT INTO table_1 SELECT * FROM table_2;
Wir erstellen nun eine Dummy-Tabelle für Filmkategorien mit dem Namen categories_archive. Das folgende Skript. erstellt die Tabelle.
CREATE TABLE `categories_archive` ( `category_id` int(11) AUTO_INCREMENT, `category_name` varchar(150) DEFAULT NULL, `remarks` varchar(500) DEFAULT NULL, PRIMARY KEY (`category_id`))
Führen Sie das obige Skript aus, um die Tabelle zu erstellen. Fügen wir nun alle Zeilen aus der Tabelle „Kategorien“ in die Archivtabelle „Kategorien“ ein.
INSERT INTO `categories_archive` SELECT * FROM `categories`;
Damit das Skript funktioniert, müssen die Tabellenstrukturen identisch sein. Ein robusteres Skript ordnet die Spaltennamen der Zieltabelle denjenigen der Datentabelle zu, wie unten dargestellt.
INSERT INTO `categories_archive`(category_id,category_name,remarks) SELECT category_id,category_name,remarks FROM `categories`;
Die Ausführung der unten stehenden SELECT-Abfrage liefert die folgenden Ergebnisse.
SELECT * FROM `categories_archive`;
| Kategorie ID | category_name | Bemerkungen |
|---|---|---|
| 1 | Komödie | Filme mit Humor |
| 2 | Romantisch | Liebesgeschichten |
| 3 | Episch | Geschichte alter Filme |
| 4 | Horror | NULL |
| 5 | Science-Fiction | NULL |
| 6 | Thriller | NULL |
| 7 | Action | NULL |
| 8 | Romantic Comedy | NULL |
| 9 | Cartoons | NULL |
| 10 | Cartoons | NULL |
PHP-Beispiel: Einfügen in MySQL Tisch
Die Funktion mysqli_query wird verwendet zur Ausführung SQL Abfragen aus PHP. Es führt Insert-, Select-, Update- und Delete-Anweisungen gleichermaßen aus und hat die folgende Syntax.
mysqli_query($db_handle,$query);
HIER,
- „mysqli_query(…)“ ist die Funktion, die die SQL-Abfragen ausführt.
- “$query” ist die auszuführende SQL-Abfrage.
- “$db_handle” ist der von mysqli_connect zurückgegebene Serververbindungslink.
Beispiel
$servername = "localhost"; $username = "alex"; $password = "yPXuPT"; $dbname = "afmznf"; // Create connection $conn = mysqli_connect($servername, $username, $password, $dbname); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "INSERT INTO addkeyworddata(link, keyword) VALUES ('https://www.guru99.com/','1000')"; if (mysqli_query($conn, $sql)) { echo "New record created successfully" . '<br>'; } else { echo "Error: " . $sql . "<br>" . mysqli_error($conn); }
