PHP PDO方式操作Sqlite实例

Overview

(前言)

PHP PDO方式操作Sqlite实例

Environment

(运行环境)


  • PHP5.3以上
    开启扩展

extension=php_pdo_sqlite.dll

Function

(功能)
- CURD操作实例

Example

(实例)

创建数据库
# Create (connect to) database in file
# (创建数据库文件)
$pdo = new PDO('sqlite:php_sqlite_pdo.db');

会自动生成php_sqlite_pdo.db文件,文件名和后缀可根据需求修改


创建表
# Create table user
# (创建表)
$pdo->exec("CREATE TABLE IF NOT EXISTS user (
            id INTEGER PRIMARY KEY,
            name TEXT,
            time TEXT)");

创建一张user表,字段为id,name,time


插入数据
# Insert data
# (插入数据)
# 方式1
$sql = "INSERT INTO user (name, time) VALUES (:name, :time)";
$stmt = $pdo->prepare($sql);
$name = 'sunshine1';
$time = date('Y-m-d H:i:s');
$stmt->bindParam(':name', $name);
$stmt->bindParam(':time', $time);
$stmt->execute();

# 方式2
$sql = "INSERT INTO user (name, time) VALUES (:name, :time)";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':name', 'sunshine2');
$stmt->bindValue(':time', date('Y-m-d H:i:s'));
$stmt->execute();

# 方式3
$sql = "INSERT INTO user (name, time) VALUES (:name, :time)";
$stmt = $pdo->prepare($sql);
$stmt->execute([':name' => 'sunshine3', ':time' => date('Y-m-d H:i:s')]);

# 方式4
$sql = "INSERT INTO user (name, time) VALUES (?, ?)";
$stmt = $pdo->prepare($sql);
$stmt->execute(['sunshine4', date('Y-m-d H:i:s')]);

# 方式5
$sql = "INSERT INTO user (name, time) VALUES ('sunshine5', '" . date('Y-m-d H:i:s') . "')";
$pdo->exec($sql);

这里插入方式有多种,使用绑定方式PDO会自动处理SQL注入等安全问题


更新数据
# Update data
# (更新数据,参考插入多种方式)
$sql = "UPDATE user SET name = :name WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->execute([':name' => 'sunshine1_updated', ':id' => 1]);

删除数据
# Delete data
# (删除数据)
$sql = "DELETE FROM user WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->execute([':id' => 2]);

查询数据
# Select data
# (查询数据)
$sql = "SELECT * FROM user";
print_r($pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC));

清空数据
# Truncate data
# (清空数据)
$sql = "DELETE FROM sqlite_sequence WHERE name = 'user'";
$pdo->exec($sql);
$sql = "DELETE FROM user";
$pdo->exec($sql);

Expansion

(扩展)

调整PDO连接方式和创建表的SQL语句,可操作Mysql等其他数据库引擎,PDO基本语法通用

Code

(源码)

https://github.com/sunshinexcode/SqliteExample

Author

(作者)

sunshine

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值