将mysql workbench'create tables'导入phpmyadmin

时间:2012-04-05 17:24:42

标签: mysql phpmyadmin mysql-workbench

我一直在使用MySQL Workbench创建我的数据库,但最近决定将结构导出到phpmyadmin。

Workbench有一个功能,你可以自动生成创建脚本,这样做我得到以下输出:

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';

CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci ;

USE `mydb` ;

-- -----------------------------------------------------
-- Table `mydb`.`User`
-- -----------------------------------------------------

DROP TABLE IF EXISTS `mydb`.`User` ;

CREATE  TABLE IF NOT EXISTS `mydb`.`User` (
  `idUser` INT NOT NULL AUTO_INCREMENT ,
  `Username` VARCHAR(25) NOT NULL ,
  `Password` VARCHAR(25) NOT NULL ,
  `Email` VARCHAR(45) NOT NULL ,
  `DateJoined` DATETIME NOT NULL ,
  PRIMARY KEY (`idUser`) )
ENGINE = InnoDB;


SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

我的实际数据库要复杂得多,但我只是用它作为一个例子。所以现在我有了create语句,我尝试将文件导入phpmyadmin,这不起作用,并且还在phpmyadmin本身运行代码。两次,我都会收到此错误:

#1044 - Access denied for user 'myusername'@'localhost' to database 'mydb'

我最初认为问题是我试图在没有设置用户的情况下执行sql。因此,我在Workbench中设置了一个用户,并尝试运行新的create语句(这也创建了我的用户和足够的角色),但是我得到了同样的错误。

最后,我尝试在phpmyadmin中创建用户并运行初始脚本,但我仍然遇到同样的错误。

有人可以帮忙吗?

编辑:在实际错误消息之上,突出显示以下行:

CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;**

我尝试更改字符集,但仍然收到错误。

0 个答案:

没有答案