使用MySQL Workbench时提示‘create is not valid input at this position’的原因
解决MySQL Workbench中
create database报“create is not valid input at this position”的问题 这种情况我碰到过好几次,基本都是下面几个常见原因,你可以逐一排查:
SQL语句未以分号结尾
MySQL的SQL语法要求每条语句必须以分号(;)作为结束标记,Workbench的语法校验会严格遵循这个规则。如果你的语句是create database wenda(没有分号),就会触发这个错误。修正方法很简单,在语句末尾加上分号:create database wenda;执行范围或光标位置错误
有时候你可能同时写了多条语句(比如先写了show databases;又写了创建库的语句),如果光标没落在创建库的语句上,或者没有选中这条语句就点击执行,Workbench可能无法正确识别你要执行的内容。解决办法:要么单独选中create database wenda;这条语句再点击执行,要么确保所有语句都带分号,然后全选后执行。Workbench语法检查缓存异常
偶尔Workbench会出现语法检查的小bug,缓存了错误的状态。这种情况下,你可以尝试关闭当前的SQL编辑标签页,重新打开一个新的标签页再输入语句;或者直接重启MySQL Workbench,基本就能解决这个问题。权限问题(可能性较低)
不过这个报错提示更偏向语法识别问题,权限不足一般会提示Access denied for user...之类的信息。如果你前面的排查都没用,可以执行show grants;查看当前用户是否拥有CREATE DATABASE权限,没有的话需要用管理员账号给当前用户授权。
内容的提问来源于stack exchange,提问作者mushixuan
相关产品推荐
相关产品推荐

