php操作sqlite

Posted andylauren

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php操作sqlite相关的知识,希望对你有一定的参考价值。

<?php
class MyDB extends SQLite3
{
    function __construct()
    {
        $this->open('test.db');
    }
}
$db = opensql();

tablesql($db);

insertsql($db);

selectsql($db);

updatesql($db);

selectsql($db);

deletesql($db);
$db->close();

function opensql()
{
    $db = new MyDB();
    if(!$db){
        echo $db->lastErrorMsg();
    } else {
        echo "Opened database successfully<br>";
    }
    return $db;
}

function tablesql($db)
{
    $sql =<<<EOF
    CREATE TABLE COMPANY
    (ID        INTEGER    PRIMARY KEY,
    DATE       DATETIME   NOT NULL,
    TEMP       REAL       NOT NULL,
    HUMIDITY   REAL,
    REMARK     TEXT);
EOF;

    $ret = $db->exec($sql);
    if(!$ret){
        echo $db->lastErrorMsg();
    } else {
        echo "Table created successfully<br>";
    }
}

function insertsql($db)
{
    $sql =<<<EOF
    INSERT INTO COMPANY (DATE,TEMP,HUMIDITY)
    VALUES ("2021-9-3 16:33:00", 25.6, 55.7);

    INSERT INTO COMPANY (DATE,TEMP,HUMIDITY)
    VALUES ("2021-9-3 16:34:00", 25.3, 55.5);

    INSERT INTO COMPANY (DATE,TEMP,HUMIDITY)
    VALUES ("2021-9-3 16:35:00", 25.3, 53.7);
EOF;

    $ret = $db->exec($sql);
    if(!$ret){
        echo $db->lastErrorMsg();
    } else {
        echo "Records created successfully<br>";
    }
}

function selectsql($db)
{
    $sql = "SELECT * from COMPANY;";
    $ret = $db->query($sql);
    while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
        echo "ID = ". $row['ID'] ."  ";
        echo "DATE = ". $row['DATE'] ."  ";
        echo "TEMP = ". $row['TEMP'] ."  ";
        echo "HUMIDITY =  ".$row['HUMIDITY'] ."<br>";
    }
    echo "Operation done successfully<br>";
}

function updatesql($db)
{
    $sql = "UPDATE COMPANY set TEMP = 23.7 where DATE='2021-9-3 16:35:00';";
    $ret = $db->exec($sql);
    if(!$ret){
        echo $db->lastErrorMsg();
    } else {
        echo $db->changes(), " Record updated successfully<br>";
    }
}

function deletesql($db)
{
    $sql = "DELETE from COMPANY where ID=2;";
    $ret = $db->exec($sql);
    if(!$ret){
        echo $db->lastErrorMsg();
    } else {
        echo $db->changes(), " Record updated successfully<br>";
    }
}
?>

参考:

https://www.runoob.com/sqlite/sqlite-php.html

https://www.php.net/manual/zh/book.sqlite3.php

 

以上是关于php操作sqlite的主要内容,如果未能解决你的问题,请参考以下文章