phpMyAdmin“没有选择数据库”MySQL

时间:2012-12-19 10:59:07

标签: mysql phpmyadmin mamp

我下载了一个MySQL备份文件,并迅速导入MAMP的phpMyAdmin。我懂了 返回:

Error
SQL query: 

--
-- Database: `mysql`
--
-- --------------------------------------------------------
--
-- Table structure for table `columns_priv`
--
CREATE TABLE IF NOT EXISTS  `columns_priv` (

 `Host` CHAR( 60 ) COLLATE utf8_bin NOT NULL DEFAULT  '', 
 `Db` CHAR( 64 ) COLLATE utf8_bin NOT NULL DEFAULT  '',
 `User` CHAR( 16 ) COLLATE utf8_bin NOT NULL DEFAULT  '',
 `Table_name` CHAR( 64 ) COLLATE utf8_bin NOT NULL DEFAULT  '',
 `Column_name` CHAR( 64 ) COLLATE utf8_bin NOT NULL DEFAULT  '',
 `Timestamp` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ,
 `Column_priv` SET(  'Select',  'Insert',  'Update',  'References' ) CHARACTER SET utf8          NOT NULL DEFAULT  '',
PRIMARY KEY (  `Host` ,  `Db` ,  `User` ,  `Table_name` ,  `Column_name` )
) ENGINE = MYISAM DEFAULT CHARSET = utf8 COLLATE = utf8_bin COMMENT =  'Column      privileges';

MySQL said: 

#1046 - No database selected 

我根本没有改变.sql文件。关于如何让这只小狗到当地的任何提示?

谢谢!

7 个答案:

答案 0 :(得分:9)

首先创建一个具有某个名称的数据库。单击该数据库,然后导入表。这里的问题是当您导入任何表时,它会查找您正在使用的数据库。所以,要么像我上面所说的那样做,要么在CREATE TABLE上面添加它,如果不是EXISTS columns_priv

USE your_db_name;//here your_db_name is the database you just created. 

就是这样。

答案 1 :(得分:6)

在phpMyAdmin中创建一个新数据库或选择一个已存在的数据库。然后导入SQL文件。

答案 2 :(得分:4)

通常导出的sql脚本没有create database语法。所以你应该创建一个数据库并手动使用

将以下行包含在sql脚本的第一行。

create database database_name;
use database_name;

注意:如果数据库已经存在,那么您只包含第二个语句。

现在您可以无错导入。

答案 3 :(得分:1)

在导入表结构和数据的SQL之前,您需要在沙箱机器上创建和/或选择数据库。

在phpMyAdmin中,这意味着从侧边栏中选择一个数据库,然后使用其导入选项卡。如果要填充的数据库不存在,则必须首先使用“创建新数据库表单”创建它。

导入后,您应确认导出导入过程未影响匿名用户记录(uid 0)。

致@scronide的信用

答案 4 :(得分:1)

如果使用phpmyadmin从sql导出数据库,则应使用自定义方法。并选择了

  

包括数据库创建,上次更新和时间的时间戳   最后检查

这个sql将包含

  

create database database_name;使用database_name;

答案 5 :(得分:1)

创建数据库并在要导入的sql文件中添加此项 USE db_name;

答案 6 :(得分:0)

您只需在导出的Sql代码文件的开头使用USE db_name;,问题就会得到解决