【问题标题】:Maria DB ServerMariadb 服务器
【发布时间】:2019-05-03 06:05:49
【问题描述】:

我在一个错误中着陆:

错误代码 1064:您的 sqlsyntax 中有错误;检查与您的 MariaDB 服务器语法相对应的手册以了解正确的语法使用

CREATE TABLE 'company'.'employee'(
'fname' VARCHAR (10) NOT NULL,
'mname' VARCHAR(2) NULL, 
'lname' VARCHAR(10) NOT NULL,
'ssn' CHAR(9) NOT NULL, 
'bdate' DATE,
'address' VARCHAR(20) NOT NULL,
'sex' CHAR NULL,
'salary' DECIMAL (10, 2) NULL,
'super_ssn' CHAR(9) NULL,
'd_no' INT NOT NULL,
PRIMARY KEY ('ssn'));

【问题讨论】:

标签: mysql mariadb mysql-workbench


【解决方案1】:

使用` 代替'(单引号),

你应该这样写:

    CREATE TABLE `company`.`employee`(
      `fname` VARCHAR (10) NOT NULL,
      `mname` VARCHAR(2) NULL,
      `lname` VARCHAR(10) NOT NULL,
      `ssn` CHAR(9) NOT NULL,
      `bdate` DATE,
      `address` VARCHAR(20) NOT NULL,
      `sex` CHAR NULL,
      `salary` DECIMAL (10, 2) NULL,
      `super_ssn` CHAR(9) NULL,
      `d_no` INT NOT NULL,
      PRIMARY KEY (`ssn`)
    );

其实`符号是可选的,但如果字段名、表或数据库与关键字或MySQL子句相同,目的是使MySQL不与查询中的意思混淆,则使用`符号。

例如:

SELECT column FROM `char`

我使用` 符号是因为表的名称与MySQL 上的关键字相同,即CHAR()(但这样命名是一种不好的方式),所以请记住,如果您编写SQL 查询,您必须决定使用` 符号

希望对您有所帮助。

【讨论】:

  • 很高兴@SID,请将我的答案标记为您的解决方案:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-05-12
  • 2021-04-06
  • 1970-01-01
  • 2018-02-22
  • 2019-10-24
  • 2018-10-13
  • 2020-09-29
相关资源
最近更新 更多