Mysql CI数据库名称

Mysql CI数据库名称,mysql,database,codeigniter,database-design,database-connection,Mysql,Database,Codeigniter,Database Design,Database Connection,我在连接Codeigniter中的数据库时遇到问题,因为我的数据库名是“database-db_sample”,所以我想知道我数据库名中的-(hypen)是否是我出错的原因 这就是我犯的错误 发生数据库错误 无法选择指定的数据库:database-db\u sample 谁能告诉我我做错了什么, 这是我的数据库配置 $db['online']['hostname'] = "localhost"; $db['online']['username'] = "root"; $db['online'][

我在连接Codeigniter中的数据库时遇到问题,因为我的数据库名是“database-db_sample”,所以我想知道我数据库名中的-(hypen)是否是我出错的原因

这就是我犯的错误

发生数据库错误

无法选择指定的数据库:database-db\u sample

谁能告诉我我做错了什么, 这是我的数据库配置

$db['online']['hostname'] = "localhost";
$db['online']['username'] = "root";
$db['online']['password'] = "";
$db['online']['database'] = "database-db_sample";
$db['online']['dbdriver'] = "mysql";
$db['online']['dbprefix'] = "";
$db['online']['pconnect'] = TRUE;
$db['online']['db_debug'] = TRUE;
$db['online']['cache_on'] = FALSE;
$db['online']['cachedir'] = "";
$db['online']['char_set'] = "utf8";
$db['online']['dbcollat'] = "utf8_general_ci";
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

您的问题是您没有为root设置适当的权限,或者mySQL不喜欢使用连字符


所以如果你想从phpMyAdmin开始新的工作。首先转到本地主机->phpMyAdmin->特权选项卡->添加新用户。键入用户名并使用localhost,然后选中“创建同名数据库…”框。就这样只是不要使用连字符。您的数据库将具有与您的用户名相同的名称以及所有正确的权限。

您确定这是您的数据库名称吗?你的配置正确吗?看起来你的错误并不是因为使用了连字号……应该允许使用连字号。我认为您可能需要将最后三个配置从
默认值
更改为
联机
。或者将所有的
在线
值更改为
默认值
。我确信这一点,因为我尝试了我的另一个数据库,它使用该配置对我有效,但该数据库名称给了我一个错误,问题是我无法修改它的名称,因为它在几年前就已经被使用了。我已经更改了它,但什么也没发生,实际上我将使用2数据库,数据库在我们的在线网站上工作,但当我尝试使用它时,它不工作。确保已使用相同的名称创建数据库