ERROR 1064 (42000): 你的 SQL 语法有误;查看与您的 MariaDB 服务器版本对应的手册,了解要使用的正确语法

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use

我是数据库的新手,我遇到了这个错误 我正在使用 MariaDB

ERROR 1064 (42000):您的 SQL 语法有误;查看与您的 MariaDB 服务器版本对应的手册,了解在 'hotel_name varchar(20) 附近使用的正确语法, 城市变量(10) )' 在第 3 行

另一个错误 ERROR 1064 (42000): 你的 SQL 语法有误;查看与您的 MariaDB 服务器版本对应的手册,了解在第 1 行

附近使用的正确语法

问题可能与您使用“number(10)”有关。那不是有效的 MariaDB 数据类型。在此处查看 MariaDB 数据类型:https://www.mariadbtutorial.com/mariadb-basics/mariadb-data-types/

编辑: MariaDB 也不允许在标识符名称中使用#。在此处查看有效的标识符名称:https://mariadb.com/kb/en/identifier-names/

#字符是注释字符。该注释之后直到行尾的任何字符都将被忽略。阅读 https://mariadb.com/kb/en/comment-syntax/

所以这个:

create table hotel(
  hotel# number(10),
  hotel_name varchar(10)
  ...

在 SQL 解析器中显示为:

create table hotel(
  hotel
  hotel_name varchar(10)
  ...

hotel.

列后缺少数据类型和逗号

您可以在列名中使用标点符号等特殊符号,如果您使用反引号分隔它们,如下所示:

  `hotel#` int,

(同样使用int而不是number,因为后者不是MariaDB支持的数据类型。)

但是每次在任何查询中引用该列时,您都必须记住使用反引号。尽量避免使用特殊字符会更简单。

这更容易:

  hotel_num int,