CI数据库名称
问题描述:
我在Codeigniter中连接数据库时出现问题,导致我的数据库名称为“database-db_sample”,所以我想知道 - 我的数据库名称中的 - (hypen)是我得到错误的原因,CI数据库名称
这是我得到
错误数据库错误发生
无法选择指定的数据库:数据库db_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开始新的。首先进入localhost-> phpMyAdmin->特权标签 - >添加新用户。输入用户名并使用localhost,然后选中“使用相同名称创建数据库...”复选框。而已! 只是不要使用连字符。您的数据库将具有与您的用户名相同的名称并具有所有适当的权限。
你确定这是你的db名称吗?你的配置是否正确?它看起来不像是你的错误的原因... – Laurence
连字符应该是允许的,[允许的字符可以在这里查看](http://dev.mysql.com/doc/refman/5.0/en/ identifiers.html)。我想你可能需要将最后三个配置从'default'改为'online'。或者将所有“在线”值更改为“默认值”。 – jleft
我敢肯定,因为我尝试了我的其他数据库,它适用于我使用该配置,但这个数据库名称给我一个错误,问题是我不能修改它的名称原因它已经使用了多年前。 。 。 –