正向工程 MySQL 模型时出错

error when forward engineering MySQL model

我在 MySQL workbench 中创建了一个模型,当我想对其进行正向工程以创建 "create" 和 "insert" 脚本时,我收到以下错误:

错误:

Executing SQL script in server
ERROR: Error 1366: Incorrect integer value: 'G1' for column 'gebruiker_id' at row 1
SQL Code:
        INSERT INTO `databaseher`.`gebruiker` (`gebruiker_id`, `voornaam`, `achternaam`, `E-mail`) VALUES ('G1', 'Ronny', 'Giezen', 'r.giezen@gmail.com')

我不明白它有什么问题,因为值 "G1" 插入的列的数据类型是 "VARCHAR(4)"。应该可以同时插入字母和数字....至少我是这么想的...

这是创建 table:

CREATE TABLE IF NOT EXISTS `databaseher`.`gebruiker` (
  `gebruiker_id` VARCHAR(4) NOT NULL,
  `voornaam` VARCHAR(25) NOT NULL,
  `achternaam` VARCHAR(20) NOT NULL,
  `E-mail` VARCHAR(30) NOT NULL,
  PRIMARY KEY (`gebruiker_id`),
  UNIQUE INDEX `E-mail_UNIQUE` (`E-mail` ASC) VISIBLE)
ENGINE = InnoDB;

如果有人能提供帮助,那就太好了。

提前致谢!

这里只是猜测,因为我们没有完整的图片。 你能运行这个:

Drop table 'databaseher'.'gebruiker'

然后重新创建 table

CREATE TABLE IF NOT EXISTS `databaseher`.`gebruiker` (
  `gebruiker_id` VARCHAR(4) NOT NULL,
  `voornaam` VARCHAR(25) NOT NULL,
  `achternaam` VARCHAR(20) NOT NULL,
  `E-mail` VARCHAR(30) NOT NULL,
  PRIMARY KEY (`gebruiker_id`),
  UNIQUE INDEX `E-mail_UNIQUE` (`E-mail` ASC) VISIBLE)
ENGINE = InnoDB;

重新运行插入。 我猜测 table 最初是使用列 gebruiker 作为整数创建的