Php 为什么读取现有sqlite数据库会生成新文件
我正在尝试使用PDO连接读取codeigniter中现有的sqlite数据库文件。我的问题实际上有两个方面:Php 为什么读取现有sqlite数据库会生成新文件,php,sqlite,codeigniter,Php,Sqlite,Codeigniter,我正在尝试使用PDO连接读取codeigniter中现有的sqlite数据库文件。我的问题实际上有两个方面: 读取现有的sqlite数据库实际上会创建一个新的db文件以及原始的db文件。假设原始数据库文件名是a.db,新文件名将是a.db;dbname= 随后的db语句在a.db上运行;dbname=。我已经尝试运行创建表,在这个新的db文件中插入新值。两者都运行良好。但是,select语句不返回任何内容,也不返回任何错误 在这一点上我感到困惑。。请帮忙 已使用相关设置更新: // sql $
a.db
,新文件名将是a.db;dbname=
a.db上运行;dbname=
。我已经尝试运行创建表,在这个新的db文件中插入新值。两者都运行良好。但是,select语句不返回任何内容,也不返回任何错误// sql
$this->db->query('create table x (y int)');
$this->db->query('insert into x values(6)');
$result = $this->db->get('x')->result(); // $result is an empty array
// config/database.php
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'sqlite:/home/perlwle/db/a.db';
$db['default']['username'] = '';
$db['default']['password'] = '';
$db['default']['database'] = '';
$db['default']['dbdriver'] = 'pdo';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
/home/perlwle/db/a.db是sqlite数据库文件,由www data拥有并可写
谢谢。这是一个内置的代码点火器;您必须更新。为什么不显示数据库连接的代码?您的操作是告诉计算机文件名是
a.DB;dbname=
。显示该代码。使用该代码更新。谢谢