1

我正在使用 Codeigniter 的 DBForge 类在该数据库中创建一个数据库和表。

这是代码:

if ($this->dbforge->create_database('new_db')) {
     $fields = array(
         'blog_id' => array(
              'type' => 'INT',
              'constraint' => 5,
              'unsigned' => TRUE,
              'auto_increment' => TRUE
          ),
          'blog_title' => array(
              'type' => 'VARCHAR',
              'constraint' => '100',
          ),
          'blog_author' => array(
              'type' => 'VARCHAR',
              'constraint' => '100',
              'default' => 'King of Town',
          ),
          'blog_description' => array(
              'type' => 'TEXT',
              'null' => TRUE,
          ),
     );
     $this->dbforge->add_field($fields);
     $this->dbforge->add_key('blog_id', TRUE);
     $this->dbforge->create_table('blog', TRUE);
}

上面提到的代码写在控制器的索引函数中。执行以下代码时,显示错误为,No database selected。有谁知道为什么会这样。任何帮助表示赞赏。

4

3 回答 3

6

您需要指定

 $db['default']['database'] = "new_db"; 

在 database.php 中

于 2013-05-06T06:12:30.537 回答
1

只需参考 application/config 文件夹中的 database.php 文件即可。确保您在 database.php 文件中的以下行中具有正确的数据库名称和其他内容值

$db['default'] = array(
'dsn'   => '',
'hostname' => 'localhost',
'username' => 'your username', //By default it is root
'password' => 'your password', //By default this field is empty
'database' => 'database name',//The error that you are getting is because of this only. Specify your database name here
'dbdriver' => 'mysqli',

希望能帮助到你

于 2017-07-12T12:31:29.787 回答
0

如果您在 config/database.php 中设置了默认数据库,但它仍然无法正常工作,您可能应该保存该文件以防忘记这样做。

于 2018-12-17T04:08:35.600 回答