我尝试通过phpmyadmin在localhost上导入MySQL数据库,我收到此错误。这是什么意思?我该如何解决?任何想法?
SQL query:
--
-- Database: `casasdl_mag`
--
--
-- Database: `casasdl`
--
-- --------------------------------------------------------
--
-- Table structure for table `admin_assert`
--
CREATE TABLE IF NOT EXISTS `admin_assert` (
`assert_id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Assert ID',
`assert_type` VARCHAR( 20 ) DEFAULT NULL COMMENT 'Assert Type',
`assert_data` TEXT COMMENT 'Assert Data',
PRIMARY KEY ( `assert_id` )
) ENGINE = INNODB DEFAULT CHARSET = utf8 COMMENT = 'Admin Assert Table' AUTO_INCREMENT =1;
MySQL said: Documentation
#1046 - No database selected
答案 0 :(得分:1)
创建表时,需要为该表选择要插入
的数据库USE databaseName;
在脚本
之前运行此命令USE casasdl;
CREATE TABLE IF NOT EXISTS `admin_assert` (
`assert_id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Assert ID',
`assert_type` VARCHAR( 20 ) DEFAULT NULL COMMENT 'Assert Type',
`assert_data` TEXT COMMENT 'Assert Data',
PRIMARY KEY ( `assert_id` )
) ENGINE = INNODB DEFAULT CHARSET = utf8 COMMENT = 'Admin Assert Table' AUTO_INCREMENT =1;
答案 1 :(得分:1)
就像你可以错误地阅读一样,你必须选择你的数据库。
在代码的开头添加USE yourDatabase;
。
答案 2 :(得分:1)
mysql或每个db后端都应该将表导入数据库,因此需要引入一个db名称,确实应该告诉mysql:
use mydbname;
你可以从:
创建它mysqladmin -uroot -p create mydbname
mysql -uroot -p mydbname < mysqlfile.sql
答案 3 :(得分:0)
如果您使用外部PHP,则不要使用use database
语法或mysql-select_db("database");
语法。而是使用接受数据库名称的mysqli_connect
。
答案 4 :(得分:0)
USE db_name
语句告诉MySQL使用db_name数据库作为后续语句的默认(当前)数据库。在会话结束或发出另一个USE语句之前,数据库仍然是默认值。
答案 5 :(得分:0)
另一个选项是在phpmyadmin中从左侧边栏选择数据库,内部导入将起作用。