【问题标题】:"a symbol name was expected" error trying to create a table in phpMyAdmin尝试在 phpMyAdmin 中创建表时出现“预期符号名称”错误
【发布时间】:2021-06-13 10:03:27
【问题描述】:

我试图在 phpMyAdmin 中的数据库中创建一个表,但我不断收到“预期的符号名称”错误,我无法弄清楚发生了什么。我的语法错了吗?我是新手,我很茫然。

【问题讨论】:

  • ' 替换为 ` 仅对值使用单引号,对列使用 `

标签: php sql phpmyadmin


【解决方案1】:

您在列属性中使用了' ' 登录。但是mySQL 允许你使用`` 符号。

CREATE TABLE IF NOT EXISTS `sales` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `name` varchar(50) NOT NULL,
        `item` varchar(50) NOT NULL,
        `date` varchar(50) NOT NULL,
        `amount` int(11) NOT NULL,
        PRIMARY KEY (`id`)
    );

【讨论】:

    【解决方案2】:

    列名、表名要加反引号(``)

    CREATE TABLE IF NOT EXISTS `sales` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `name` varchar(50) NOT NULL,
        `item` varchar(50) NOT NULL,
        `date` varchar(50) NOT NULL,
        `amount` int(11) NOT NULL,
        PRIMARY KEY (`id`)
    )
    

    或者你也可以不用反引号:

    CREATE TABLE IF NOT EXISTS sales (
        id int(11) NOT NULL AUTO_INCREMENT,
        name varchar(50) NOT NULL,
        item varchar(50) NOT NULL,
       date varchar(50) NOT NULL,
       amount int(11) NOT NULL,
       PRIMARY KEY (id)
    )
    

    【讨论】:

      【解决方案3】:

      你的代码是错误的,所以这里是正确的代码:

      CREATE TABLE IF NOT EXISTS `sales` (
          `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
          `name` VARCHAR(50) CHARACTER SET utf8 NOT NULL,
          `item` VARCHAR(50) CHARACTER SET utf8 NOT NULL,
          `date` VARCHAR(50) NOT NULL,
          `amount` int(11) NOT NULL
      ) 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-20
        • 1970-01-01
        • 1970-01-01
        • 2015-01-15
        • 2016-07-12
        • 1970-01-01
        • 2017-09-28
        • 1970-01-01
        相关资源
        最近更新 更多