我有以下 sql 脚本:
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='TRADITIONAL,ALLOW_INVALID_DATES';
-- -----------------------------------------------------
-- Table `Soccerproject`.`user`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Soccerproject`.`user` (
`userName` VARCHAR(45) NULL,
`email` VARCHAR(60) NOT NULL,
`password` VARCHAR(150) NOT NULL,
`money` BIGINT NOT NULL,
`userid` INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`userid`),
UNIQUE INDEX `userid_UNIQUE` (`userid` ASC),
UNIQUE INDEX `userName_UNIQUE` (`userName` ASC),
UNIQUE INDEX `email_UNIQUE` (`email` ASC))
ENGINE = InnoDB;
但是当我尝试导入它时出现此错误:
#1142 - CREATE command denied to user '*****'@'localhost' for table 'user'
谷歌搜索没有解决我的问题...
最佳答案
您的用户没有在该数据库中创建表的权限。 The MySQL docs向您展示向用户授予权限的语法,因此请尝试一下。
你可以这样做:
GRANT CREATE ON <dbname> TO 'Stijnxk59'@'<dbhost>';
这将为用户授予 CREATE 权限,但您可以添加 ALTER 权限以及您想要的任何其他权限。或者您甚至可以授予所有权限,这仅取决于您希望允许该用户执行的操作。
关于mysql - 尝试将 sql 脚本导入现有数据库会生成错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27068421/