MariaDB 语法错误

Error in MariaDB Syntax

我正在尝试将数据添加到我的 MariaDB 数据库中。每次我 运行 php 文件时,我都会收到以下错误,

Error creating database: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSERT INTO 'FileCenter' ('FileID', 'FileNAME', 'FileKEY', 'FileSRC') VALUES (NU' at line 1"

这是我的代码:

<?php
$servername = "localhost";
$username = "root";
$password = "password";
$database = "DownloadCenter";
// Create connection
$conn = new mysqli($servername, $username, $password, $db);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

// Create database
//sql = "USE DownloadCenter; INSERT INTO 'FileCenter' ('FileID', 'FileNAME', 'FileKEY', 'FileSRC') VALUES (NULL, 'Video ', '45ge5g', '/var/www/MyVideo.mp4'), (NULL, NULL, NULL, NULL);";
$sql = "INSERT INTO FileCenter (FileId,FileNAME,FileKEY,FileSRC) VALUES (DEFAULT, 'Video', '45ge5g', '/var/www/MyVideo.mp4'";
if ($conn->query($sql) === TRUE) {
    echo "Database created successfully";
} else {
    echo "Error creating database: " . $conn->error;
}

$conn->close();

备注:

这个:

//sql = "USE DownloadCenter; INSERT INTO 'FileCenter' ('FileID', 'FileNAME', 'FileKEY', 'FileSRC') VALUES (NULL, 'Video ', '45ge5g', '/var/www/MyVideo.mp4'), (NULL, NULL, NULL, NULL);";

您不能在单个数据库调用中 运行 多个语句。这是 PHP 底层 mysql 驱动程序的核心限制,作为对一种形式的 SQL 注入攻击的基本防御。

由于您不能 运行 多个语句,单个 query() 调用中的第二个和后续语句将成为语法错误。

请注意,您的第二个查询(未注释的查询)末尾缺少一个 ),从而给它带来了语法错误。