为什么我收到错误? (SQL语法)

时间:2016-07-22 18:16:36

标签: php html mysql database

我正在尝试在数据库中创建一个表,但它无法正常工作。我收到此错误: “创建组时出错:您的SQL语法中有错误;请在第4行查看与您的MariaDB服务器版本对应的手册,以便在'desc VARCHAR(3000)NOT NULL,addmem VARCHAR(300)'附近使用正确的语法“

这是我的HTML和PHP:

<form action="includes/creategroup.inc.php" method="POST">
    <div>
        <label>Title<span class="req">*</span></label>
        <input type="text" name="title" required autocomplete="off" />
   </div>
    <div>
        <label>Description<span class="req">*</span></label>
        <input type="text" name="desc" required autocomplete="off" />
    </div>
    <div>
        <label>Add members<span class="req">*</span></label>
        <input type="text" name="addmem" placeholder="Enter Username" required autocomplete="off" />
        <?php
            $add = "SELECT COLUMN_NAME, TABLE_NAME
                  FROM INFORMATION_SCHEMA.COLUMNS
                  WHERE COLUMN_NAME = 'userid'"
        ?>
    </div>
    <button type="submit" class="button button-block"/>Create Group</button>
 </form>

这是我的PHP和SQL:

<?php
$conn = mysqli_connect("localhost", "root", "", "scholastus");
if (!$conn){
    die("Connection failed: ".mysqli_connect_error());
    }

session_start();

$title = $_POST['title'];
$desc = $_POST['desc'];
$addmem = $_POST['addmem'];

// sql to create table
$sql = "CREATE TABLE groups(
group_id INT(6) NOT NULL PRIMARY KEY AUTO_INCREMENT, 
title VARCHAR(140) NOT NULL, 
desc VARCHAR(3000) NOT NULL, 
addmem VARCHAR(300)
)";

if (mysqli_query($conn, $sql)){
    echo "Group created successfully";
} else {
    echo "Error creating group: " . mysqli_error($conn);
}

// Close connection
mysqli_close($conn);

1 个答案:

答案 0 :(得分:0)

DESC是保留字;如果你想使用它,它必须被分隔。

https://dev.mysql.com/doc/refman/5.5/en/keywords.html