我实际上只是第一次尝试和试验 MySQL Workbench 和 Azure Database。因此,我在 MySQL Workbench 上建模了一个简单的模型,当我尝试与 azure 数据库同步时,出现以下错误。
MySQL 工作台 8.0 Azure MySQL版本:5.7
RROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VISIBLE,
PRIMARY KEY (`emp_id`),
UNIQUE INDEX `employee_id_UNIQUE` (`emp_id`' at line 20
SQL Code:
CREATE TABLE IF NOT EXISTS `azcare_schema`.`employee` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`emp_id` VARCHAR(10) NOT NULL,
`first_name` VARCHAR(20) NULL DEFAULT NULL,
`middle_name` VARCHAR(30) NULL DEFAULT NULL,
`last_name` VARCHAR(20) NULL DEFAULT NULL,
`date_of_birth` VARCHAR(45) NULL DEFAULT NULL,
`gender` CHAR(6) NULL DEFAULT NULL,
`marital_status` VARCHAR(20) NULL DEFAULT NULL,
`nationality` VARCHAR(30) NULL DEFAULT NULL,
`passport_number` VARCHAR(20) NULL DEFAULT NULL,
`sponser` VARCHAR(40) NULL DEFAULT NULL,
`joining_date` DATE NULL DEFAULT NULL,
`department` CHAR(100) NULL DEFAULT NULL,
`education_degree` VARCHAR(45) NULL DEFAULT NULL,
`religion` VARCHAR(30) NULL DEFAULT NULL,
`blood_group` CHAR(4) NULL DEFAULT NULL,
`create_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE,
PRIMARY KEY (`emp_id`),
UNIQUE INDEX `employee_id_UNIQUE` (`emp_id` ASC) VISIBLE)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
SQL script execution finished: statements: 3 succeeded, 1 failed
Fetching back view definitions in final form.
Nothing to fetch Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
根据@ErgestBasha 的建议。
VISIBLE在 MySQL 8.0+ 上引入 Azure MySQL版本是5.7我通过更新 MySQL Workbench Preference-> MYSQL -> Default Target MySQL Version to 5.7
修复了错误