Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我不知道MySQL上到底出了什么问题,继续得到错误1064_Mysql_Sql_Mysql Error 1064 - Fatal编程技术网

我不知道MySQL上到底出了什么问题,继续得到错误1064

我不知道MySQL上到底出了什么问题,继续得到错误1064,mysql,sql,mysql-error-1064,Mysql,Sql,Mysql Error 1064,在服务器中执行SQL脚本 错误:错误1064:您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解使用“可见”附近的正确语法, 约束fk\u周锻炼 外键(训练\u id训练) “在第12行 SQL代码: -- ----------------------------------------------------- -- Table `mydb`.`WEEK` -- ---------------------------------------------

在服务器中执行SQL脚本

错误:错误1064:您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解使用“可见”附近的正确语法, 约束
fk\u周锻炼
外键(
训练\u id训练
) “在第12行

SQL代码:

    -- -----------------------------------------------------
    -- Table `mydb`.`WEEK`
    -- -----------------------------------------------------
    CREATE TABLE IF NOT EXISTS `mydb`.`WEEK` (
      `WeekOne` VARCHAR(27) NOT NULL,
      `WeekTwo` VARCHAR(27) NOT NULL,
      `WeekThree` VARCHAR(27) NOT NULL,
      `WeekFour` VARCHAR(27) NOT NULL,
      `IdWeek` INT NOT NULL,
      `WORKOUT_IdWorkout` INT NOT NULL,
      PRIMARY KEY (`IdWeek`),
      INDEX `fk_WEEK_WORKOUT_idx` (`WORKOUT_IdWorkout` ASC) VISIBLE,
      CONSTRAINT `fk_WEEK_WORKOUT`
        FOREIGN KEY (`WORKOUT_IdWorkout`)
        REFERENCES `mydb`.`WORKOUT` (`IdWorkout`)
        ON DELETE NO ACTION
        ON UPDATE NO ACTION)
    ENGINE = InnoDB
无论我做了什么更改,每次都会收到这个消息,从8.0版开始,它引入了
VISIBLE
关键字。您可能正在运行早期版本

这个特性被称为不可见索引:它指出,在MySQL的早期版本中,索引总是可见的。即使在MySQL 8.0中,索引在默认情况下也是可见的,除非显式定义为
不可见

您可以安全地从脚本中删除
VISIBLE
关键字,并且它在所有版本的MySQL上都可以正常工作(并且保持一致)(假设表
WORKOUT
存在,并且它有一个名为
IdWorkout
的数据类型
INT
的唯一列)

引入了
可见
关键字,从8.0版开始提供。您可能正在运行早期版本

这个特性被称为不可见索引:它指出,在MySQL的早期版本中,索引总是可见的。即使在MySQL 8.0中,索引在默认情况下也是可见的,除非显式定义为
不可见

您可以安全地从脚本中删除
VISIBLE
关键字,并且它在所有版本的MySQL上都可以正常工作(并且保持一致)(假设表
WORKOUT
存在,并且它有一个名为
IdWorkout
的数据类型
INT
的唯一列)


您是否检查了MySQL版本的手册,查看该版本是否支持
可见的
?并不是所有人都这样。Google mysql文档,查找您正在使用的mysql特定版本的文档,然后阅读
CREATE TABLE
的文档。(或者更快速地,您可以尝试搜索这个站点来代替MySQL错误1064)。顺便说一下,考虑这是否是您的方案的最佳设计。您是否检查了MySQL版本的手册,以查看该版本是否支持“代码>可见/代码”?并不是所有人都这样。Google mysql文档,查找您正在使用的mysql特定版本的文档,然后阅读
CREATE TABLE
的文档。(或者更快速地,你可以尝试搜索这个网站来代替MySQL错误1064。)顺便考虑一下,这是否是你的方案的最佳设计。