我使用xampp控制面板,从那里开始apache和mysql的过程。然后我去mysql工作台,服务器状态似乎没问题,这里有一些信息
Host: Windows-PC
Socket: C:/xampp/mysql/mysql.sock
Port: 3306
Version 10.1.31-MariaDB mariadb.org binary distribution
Compiled For: Win32(32)
Configuratin File: unknown
然后每当我尝试为我的虚拟架构添加外键时,如:
ALTER TABLE `puppies`.`animals`
ADD INDEX `Breed_idx` (`BreedID` ASC) VISIBLE;
;
ALTER TABLE `puppies`.`animals`
ADD CONSTRAINT `Breed`
FOREIGN KEY (`BreedID`)
REFERENCES `puppies`.`breeds` (`Breed`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
我收到以下错误
ERROR 1064: You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax to use near
'' at line 2
SQL Statement:
ALTER TABLE `puppies`.`animals`
ADD INDEX `Breed_idx` (`BreedID` ASC) VISIBLE
那么我能做些什么才能使xampp开始在mariaDb上使用mysql语法?
或者如果我对问题的理解不合适,那么我应该怎样做才能在使用xampp时再次面对这类问题?
答案 0 :(得分:8)
问题是单词VISIBLE
,将其删除即可。
索引默认可见。
你的问题:"如果我删除了VISIBLE它工作正常,那么为什么mysql workbench决定添加可见?"
我的回答:标记索引不可见的选项尚未在MariaDB中实现(afaik!)。
更新:
MariaDB的语法不同,请参阅此参考:https://jira.mariadb.org/browse/MDEV-7317
答案 1 :(得分:6)
只需添加到在MySQL Workbench中使用Maria DB的用户,就无需安装mysql。您可以将“默认目标MySQL版本”从“首选项”更改为5.7或5.6,并且工作台将删除VISIBLE关键字。
这是mysql错误的链接 https://bugs.mysql.com/bug.php?id=92269
答案 2 :(得分:0)
我正在使用MySQL Workbench并遇到相同的问题。 更改“首选项”,但无效。
解决方案:如果您对模型进行正向导出,则需要在其他位置更改配置。