Yii中的数据库连接错误

时间:2011-04-21 12:32:42

标签: yii

我正在阅读有关创建博客和遵循步骤的Yii教程。对于数据库,我刚刚导入了测试数据库。一切都很好。

当我在main.php中与数据库建立连接时,它显示以下错误:

  

CDbConnection无法打开数据库连接:SQLSTATE [42000] [1049]未知数据库'myblog'

main.php中的数据库连接数组是:

//'db'=>array(
//  'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
//),
// uncomment the following to use a MySQL database

'db'=>array(
    'connectionString' => 'mysql:host=localhost;dbname=myblog',
    'emulatePrepare' => true,
    'username' => 'root',
    'password' => 'root',
    'charset' => 'utf8',
    'tablePrefix' => 'ia_',
),

我做错了什么?

2 个答案:

答案 0 :(得分:2)

您是否关注此Yii博客教程?

http://www.yiiframework.com/doc/blog/1.1/en/prototype.database

您使用的是MySQL数据库还是SQLite? DBName是博客,而不是此页面上的myblog。

提示:如果要使用MySQL而不是SQLite来存储数据,可以使用/wwwroot/yii/demos/blog/protected/data/schema.mysql.sql中的SQL语句创建名为blog的MySQL数据库。然后,按如下所示修改应用程序配置,

return array(
    ......
    'components'=>array(
        ......
        'db'=>array(
            'connectionString' => 'mysql:host=localhost;dbname=blog',
            'emulatePrepare' => true,
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
            'tablePrefix' => 'tbl_',
        ),
    ),
  ......
);

答案 1 :(得分:1)

在您的数据库中注意以下错误! SQLSTATE [42000] [1049]未知数据库'test:host = localhost

php代码中存在问题

错误的代码

  
    

$ pdo = new PDO('mysql:host = localhost:dbname = shenakht',“mehdi”,“1”);

  

更正代码

  
    

$ pdo = new PDO('mysql:host = localhost; dbname = shenakht',“mehdi”,“1”);

  

之间的区别是:和;

如果您的代码正确,请转到http://localhost/phpmyadmin并创建数据库!