Ist es möglich, eine SQL-Tabelle zu erstellen und gleichzeitig Daten einzufügen?
Wenn ich die Erstelltabelle entfernt habe, funktioniert sie, aber ist es möglich, dies mit Code zu tun?

Hier ist der Code
$sql = "CREATE TABLE student ( student_id INT, name VARCHAR(20), major VARCHAR(20), PRIMARY KEY(student_id) ) INSERT INTO student VALUE(1, 'Jack', 'biology')"; if ($connect -> query($sql) === TRUE) { echo "New Table Created! <br><br>"; } else { echo "Error : " . $sql . " <br><br>" . $connect -> error . "<br><br>";
}
echo "Connected Successfully!";
Hier ist der Fehler, als ich die Erstellungs-Tabelle nicht entfernt habe
Fehler: CREATE TABLE student (student_id INT, Name VARCHAR (20), Haupt-VARCHAR (20), PRIMARY KEY (student_id)); INSERT IN Studentenwert (2, 'Kate', 'Soziologie')
Sie haben einen Fehler in Ihrer SQL-Syntax. Überprüfen Sie das Handbuch, das Ihrer MariaDB-Serverversion entspricht, auf die richtige Syntax für die Verwendung in der Nähe von 'INSERT INTO student VALUE (2,' kate ',' sociology ')' in Zeile 8
Antworten
Sie haben 2 Tippfehler in Ihrem Code:
Fehlendes ";" zwischen den Anweisungen CREATE und INSERT.
Die INSERT-Anweisung verwendet VALUES, nicht VALUE.
$sql = "CREATE TABLE student ( student_id INT, name VARCHAR(20), major VARCHAR(20), PRIMARY KEY(student_id) ); INSERT INTO student VALUES (1, 'Jack', 'biology')";
Überprüfen Sie außerdem die offiziellen Dokumente auf mysqli Multiple-Anweisungen und mysqli_multi_query (), da wie im ersten Dokument erwähnt:
Die API-Funktionen mysqli_query () und mysqli_real_query () setzen kein Verbindungsflag, das zum Aktivieren mehrerer Abfragen auf dem Server erforderlich ist. Ein zusätzlicher API-Aufruf wird für mehrere Anweisungen verwendet, um die Wahrscheinlichkeit versehentlicher SQL-Injection-Angriffe zu verringern.
Sie können auch Ihren Code ändern, um jede Abfrage einzeln auszuführen.