微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

简洁的PHP操作SQLite类

sqlite是一款轻型的数据库" title="数据库" >数据库,是遵守ACID的关联式数据库" title="数据库" >数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起MysqL、Postgresql这两款开源世界著名的数据库" title="数据库" >数据库管理系统来讲,它的处理速度比他们都快。

这里为大家提供一个简洁的PHP操作sqlite类:

<?PHP

/***

//应用举例

require_once('cls_sqlite.PHP');

//创建实例

$DB=new sqlite('blog.db'); //这个数据库" title="数据库" >数据库文件名字任意

//创建数据库" title="数据库" >数据库表。

$DB->query("create table test(id integer primary key,title varchar(50))");

//接下来添加数据

$DB->query("insert into test(title) values('小屋')");

$DB->query("insert into test(title) values('蓝雨')");

$DB->query("insert into test(title) values('Ajan')");

$DB->query("insert into test(title) values('sjolzy')");

//读取数据

print_r($DB->getlist('select * from test order by id desc'));

//更新数据

$DB->query('update test set title = "三大" where id = 9');

***/ 

class sqlite

{

    function __construct($file){

        try{

            $this->connection=new PDO('sqlite:'.$file);

        }catch(PDOException $e){

            try{

                $this->connection=new PDO('sqlite2:'.$file);

            }catch(PDOException $e){

                exit('error!');

            }

        }

    }

    function __destruct(){

        $this->connection=null;

    }

class="Apple-style-span" color: rgb(165,42,42); ">    functionquery($sql){ //直接运行sql,可用于更新、删除数据

        return $this->connection->query($sql);

    }

class="Apple-style-span" color: rgb(165,42); ">    function getlist($sql){ //取得记录列表

        $recordlist=array();

        foreach($this->query($sql) as $rstmp){

            $recordlist[]=$rstmp;

        }

        return $recordlist;   }

class="Apple-style-span" color: rgb(165,42); ">    function Execute($sql){

        return $this->query($sql)->fetch();

    }

class="Apple-style-span" color: rgb(165,42); ">    function RecordArray($sql){

        return $this->query($sql)->fetchAll();

    }

class="Apple-style-span" color: rgb(165,42); ">    function RecordCount($sql){

        return count($this->RecordArray($sql));

    }

    function RecordLastID(){

        return $this->connection->lastInsertId();

    }

}

?>

转载相关 PHP 配置说明:

1. 先测试 PHP 能否连接sqlite 数据库" title="数据库" >数据库

建立一个PHP文件

<?PHP

$conn  =  sqlite_open('test.db');

?>

测试这个文件能否正常运行。

如果没有能正常加载sqlite模块,就可能出现这样的错误

Fatal error: Call to undefined functionsqlite_open() in C:ApacheApache2htdocstest.PHP on line 2

解决办法如下:

2. 打开 PHP.ini 文件,将以下三行前面的分号删除

;extension=PHP_sqlite.dll

;extension=PHP_pdo.dll

;extension=PHP_pdo_sqlite.dll

重新启动web服务器。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐