php使用pdo串連sqlite3的配置方法詳解

來源:互聯網
上載者:User
這篇文章主要介紹了php使用pdo串連sqlite3的配置方法,結合執行個體形式較為詳細的分析了php基於pdo操作sqlite3的相關注意事項,需要的朋友可以參考下

剛剛開始使用php+sqlite 的時候,一直以為自己使用的是sqlite3 ,其實不是,php從php5 >=5.3.0 的時候才開始預設支援sqlite3

可參照官方文檔http://www.php.net/manual/zh/sqlite3.open.php

預設的方法介面:

public void SQLite3::open ( string $filename [, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string $encryption_key ]] )

利用PHP操作資料庫時發現PHP預設只支援到Sqlite2,不支援最新版的Sqlite3。如果想支援Sqlite3就要使用PDO。要想使用PDO,需要在php.ini裡面載入php_pdo.dll和php_pdo_sqlite.dll兩個模組。如下:

extension=php_pdo.dllextension=php_pdo_sqlite.dll

如果沒有使用pdo ,即使你開啟了上面的參數,其實還是使用sqlite2 的,不信你訪問看一下產生的資料庫在檔案的開頭是不是提示:

** This file contains an SQLite 2.1 database **

當php環境沒有開啟上面支援的配置時將報如下錯誤:

Fatal error: Call to undefined function sqlite_open()

sqlite3樣本:

<html><?php//$dsn = 'sqlite:sql.db';try{//$dbh = new PDO($dsn, $user, $password);  //建立串連// $dbh = new PDO('sqlite:yourdatabase.db');$dbh = new PDO('sqlite:itlife365.com');echo 'Create Db ok' ;//建表$dbh->exec("CREATE TABLE itlife365(id integer,name varchar(255))");echo 'Create Table itlife365 ok<BR>';$dbh->exec("INSERT INTO itlife365 values(1,'itlife365.com')");echo 'Insert Data ok<BR>';$dbh->beginTransaction();$sth = $dbh->prepare('SELECT * FROM itlife365');$sth->execute();//擷取結果$result = $sth->fetchAll();print_r($result);$dsn=null;}catch (PDOException $e){echo 'Connection failed: ' . $e->getMessage();$dsn = null;}?></html><?php $dbh = null;//或使用unset($dbh); ?>

驗證:查看資料庫:

在檔案頭顯示:

SQLite format 3***

總結:以上就是本篇文的全部內容,希望能對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.