【问题标题】:mysql imported model forward engineer errormysql导入模型转发工程师错误
【发布时间】:2020-03-04 12:44:28
【问题描述】:

我在 MySQL Workbench 中创建了一个包含 3 个表的小型数据库。创建表后,我在其中插入了一些数据,它工作正常。现在我有另一台电脑。我从第一台电脑将模型导出为 mwb 文件,我想将该 mwb 文件导入我的第二台电脑。这是我在将模型(正向工程)导入我的第二台电脑时遇到的错误。我不明白为什么在 MySQL Workbench 中创建的模型在另一台电脑的工作台中不起作用。有人可以帮忙吗?谢谢mwb file codes i wanted to import

errors i got when forward engineering

编辑:这是现在给出错误的脚本:

-- MySQL Workbench Forward Engineering
    SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
    SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
    SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
    -- -----------------------------------------------------
    -- Schema mydb
    -- -----------------------------------------------------
    -- -----------------------------------------------------
    -- Schema karakoyd
    -- -----------------------------------------------------

    -- -----------------------------------------------------
    -- Schema karakoyd
    -- -----------------------------------------------------
    CREATE SCHEMA IF NOT EXISTS `karakoyd` DEFAULT CHARACTER SET utf8 COLLATE utf8_turkish_ci ;
    USE `karakoyd` ;

    -- -----------------------------------------------------
    -- Table `karakoyd`.`emp`
    -- -----------------------------------------------------
    CREATE TABLE IF NOT EXISTS `karakoyd`.`emp` (
      `idemp`  NOT NULL,
      `name` VARCHAR(45) NOT NULL,
      `email` VARCHAR(255) NOT NULL,
      `pass` VARCHAR(255) NOT NULL,
      `salt` VARCHAR(19) NOT NULL,
      `log` VARCHAR(45) NOT NULL,
      `rütbe` VARCHAR(45) NOT NULL,
      PRIMARY KEY (`idemp`),
      UNIQUE INDEX `idemployee_UNIQUE` (`idemp` ASC) VISIBLE)
    ENGINE = InnoDB
    AUTO_INCREMENT = 19
    DEFAULT CHARACTER SET = utf8
    COLLATE = utf8_turkish_ci;

【问题讨论】:

  • 添加文本而不是图像。
  • 最小化,我们不需要全部。
  • @VBoka 我已经同步了模型。现在它只在我的 emp 表上给出错误。 emp 表没有 blob 或 image 列,所以我认为问题不是来自图像,但感谢您的回复
  • @OğuzcanŞirolu 我不认为你理解我。在您的问题中,您给了我们可以使用的图像。我们应该如何处理这些图像?重新键入所有代码以查看错误在哪里?在此处复制并粘贴脚本,不要将图像上传给我们。此外,正如 jarlh 所写:只给我们脚本中不起作用的部分。
  • 哦,好吧,我现在就去做。误会请见谅

标签: mysql sql import


【解决方案1】:

据我所见,在您的图像中,如果不定义列的类型,您就无法在表中创建列。

例如,在您的表 EMP 中,您正在这样创建它:

idemp not null

应该是这样的(仅举例):

idemp int not null

here is a small demo

And a new demo with your table

这就是您的 TABLE 代码的样子。

CREATE TABLE IF NOT EXISTS `karakoyd`.`emp` (
      `idemp` int NOT NULL,   --the change was made here(column's data type was missing)
      `name` VARCHAR(45) NOT NULL,
      `email` VARCHAR(255) NOT NULL,
      `pass` VARCHAR(255) NOT NULL,
      `salt` VARCHAR(19) NOT NULL,
      `log` VARCHAR(45) NOT NULL,
      `rütbe` VARCHAR(45) NOT NULL,
      PRIMARY KEY (`idemp`),
      UNIQUE INDEX `idemployee_UNIQUE` (`idemp` ASC) VISIBLE)
    ENGINE = InnoDB
    AUTO_INCREMENT = 19
    DEFAULT CHARACTER SET = utf8
    COLLATE = utf8_turkish_ci;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-06
    • 2020-03-05
    • 2016-04-20
    • 2020-10-08
    • 2018-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多