php连接sqlite数据库

本文展示了如何使用PHP连接和操作SQLite3数据库,包括建立连接、INSERT数据、SELECT查询、UPDATE更新和DELETE删除记录。代码示例详细说明了每个操作的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用php来连接sqlite数据库,Windows 用户必须启用 php_sqlite3.dll 才能使用该扩展。关于如何启用 php_sqlite3.dll,可以参考未检测到您服务器环境的sqlite3数据库扩展

连接数据库

以下代码显示了如何连接到一个现有的数据库。

<?php
   class MyDB extends SQLite3
   {
      function __construct()
      {
         $this->open('test.db');
      }
   }
   $db = new MyDB();
   if(!$db){
      echo $db->lastErrorMsg();
   } else {
      echo "Opened database successfully\n";
   }
?>

我们将这个文件命名为test.php,并将test.php和test.db放入到phpstudy的www目录下,在浏览器下输入localhost/test.php,会得到如下消息:
Opened database successfully

INSERT操作

class MyDB extends SQLite3
{
   function __construct()
   {
      $this->open('tests.db'); //打开tests.db数据库
   }
}
$db = new MyDB();           // 创建db对象,
if(!$db){
   echo $db->lastErrorMsg();            //若db对象为空,则连接失败
} else {
   echo "Opened database successfully\n";
}


$sql =<<<EOF
INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (9, 'Mark', 25, 'Rich-Mond ', 65000.00 );
EOF;

$ret = $db->exec($sql);       //执行SQL命令的快捷方式,可以由多个SQL命令组成


if(!$ret){
    echo $db->lastErrorMsg();
 } else {
    echo "Records created successfully\n";
 }

$db->close();   //关闭连接

SELECT查询

从数据表COMPANY中获取并显示记录


class MyDB extends SQLite3
{
   function __construct()
   {
      $this->open('tests.db'); //打开tests.db数据库
   }
}
$db = new MyDB();           // 创建db对象,
if(!$db){
   echo $db->lastErrorMsg();            //若db对象为空,则连接失败
} else {
   echo "Opened database successfully\n";
}


$sql =<<<EOF
SELECT * from COMPANY;
EOF;

$ret = $db->query($sql);       //执行一个SQL查询,如果查询到返回结果则返回一个SQLite3Result对象
/*将相应的数据表中的数据显示出来 */
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
echo "ID = ". $row['ID'] . "<br/>";
echo "NAME = ". $row['NAME'] ."<br/>";
echo "ADDRESS = ". $row['ADDRESS'] ."<br/>";
echo "SALARY =  ".$row['SALARY'] ."<br/>";
}
echo "Operation done successfully\n";
$db->close();   //关闭连接

update操作

如何使用 UPDATE 语句来更新任何记录,然后从 COMPANY 表中获取并显示更新的记录:

class MyDB extends SQLite3
{
   function __construct()
   {
      $this->open('tests.db'); //打开tests.db数据库
   }
}
$db = new MyDB();           // 创建db对象,
if(!$db){
   echo $db->lastErrorMsg();            //若db对象为空,则连接失败
} else {
   echo "Opened database successfully\n";
}

$sql =<<<EOF
UPDATE COMPANY set SALARY = 25000.00 where ID=1;
EOF;

$ret = $db->exec($sql);
if(!$ret){
echo $db->lastErrorMsg();
} else {
echo "Records created successfully\n";
}
$db->close();   //关闭连接

DELETE 操作

如何使用 UPDATE 语句来更新任何记录,然后从 COMPANY 表中获取并显示更新的记录:


class MyDB extends SQLite3
{
   function __construct()
   {
      $this->open('tests.db'); //打开tests.db数据库
   }
}
$db = new MyDB();           // 创建db对象,
if(!$db){
   echo $db->lastErrorMsg();            //若db对象为空,则连接失败
} else {
   echo "Opened database successfully\n";
}

$sql =<<<EOF
DELETE from COMPANY where ID=2;
EOF;

$ret = $db->exec($sql);
if(!$ret){
echo $db->lastErrorMsg();
} else {
echo "Records created successfully\n";
}
$db->close();   //关闭连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值