当前位置: 首页 > 知识库问答 >
问题:

在MariaDB中创建表时发生SQL语法错误

公良同
2023-03-14

使用此代码在Mariadb中创建表时

CREATE TABLE classes(
    ClassID SMALLINT UNSIGNED PRIMARY,
    Grade TINYINT UNSIGNED,
    Subject VARCHAR(20),
    YearTaught YEAR
);

我得到了这个错误。

#1064年的今天,您的SQL语法出现错误;查看与您的MariaDB服务器版本对应的手册,以了解第2行“Grade TINYINT UNSIGNED,Subject VARCHAR(20),yearteached YEAR)”附近使用的正确语法

我不知道语法有什么问题。谢谢你。

共有1个答案

曹伟泽
2023-03-14

您的语句中缺少关键字KEY,更新

ClassID SMALLINT UNSIGNED PRIMARY,

ClassID SMALLINT UNSIGNED PRIMARY KEY,

您可以使用KEY代替PRIMARY KEY,但不仅仅是PRIMARY

使用主键(或仅使用主键)使列成为主键。主键是一种特殊类型的唯一键。每个表最多只能有一个主键,并且隐式不为NULL。

留档在这里。

 类似资料:
  • 我不知道该怎么办!感谢任何帮助! 另外,我是否应该在安装HBase之前配置Zookeeper?我的教程没有这么说。

  • 以下是创建表的SQL语句: 在Spring boot start期间执行时,会出现错误: 原因:org。h2。jdbc。JdbcSQLSyntaxErrorException:SQL语句“如果不存在产品(ID INT IDENTITY(1,1),NAME VARCHAR(50)不为空,PRICE FLOAT(7,[*]2)不为空,DESCRIPTION VARCHAR(100)不为空)”中的语法错

  • 问题内容: 我不断收到CREATE TABLE语法错误,但是看不到错误!是什么导致错误? 我的SQL: 问题答案: 由于您的DDL语句包括,因此您必须使用ADO执行它。我将您的语句加载到字符串变量中,然后从Access 2007中执行该语句,如下所示: 的 工资 字段是小数精度8,尺度2和默认15000。 是Jet 4.0附带的Access SQL功能之一。这些功能不适用于从DAO执行的语句。如果

  • 用户 角色 Application.Properties

  • 在MariaDB中,语句用于在选定的数据库中创建表。使用语句创建一个具有给定名称()的表。 必须具有表或数据库的权限才能创建表。 语法如下 - 在最基本的形式中,语句提供了一个表名称,后跟一列,索引和约束。 默认情况下,该表是在默认数据库中创建的。 用指定一个数据库。 如果引用表名称,则必须分别将数据库名称和表名引用为.。 这对于是特别有用的,因为它允许在包含来自其他数据库的数据的数据库中创建表。

  • 我想用MariaDB创建一个表 但我有一个错误: #1064-您的SQL语法有错误;查看与您的MariaDB服务器版本相对应的手册,以获得使用“match(a INT AUTO_INCREMENT NOT NULL主键,b INT NOT NULL,”at line 1“的正确语法 问题出在哪里?