suda

一款小型、轻量化的PHP7框架

View project on GitHub

数据库

在框架中,提供了对数据库操作的类,数据库操作,数据库操作需要注意的地方包括两个部分,一个是数据源,一个是数据表,通过数据源我们可以配置数据库的链接,一个数据源由多个链接组成,目前框架支持数据源的类型为 mysqlsqlite,数据库的配置为 @app-resouce/config/data-source, 默认读取应用的配置 app/resource/config/data-source.json 文件,默认的配置如下:

{
    "master": {
        "type": "mysql",
        "enable": true,
        "prefix": "dx_",
        "mode": "read+write",
        "host": "127.0.0.1",
        "port": 3306,
        "name": "suda_system",
        "user": "root",
        "password": "root",
        "charset": "utf8mb4"
    }
}

配置说明

配置JSON文件中支持读取PHP常量参数,语法为 ${常量名}, 现有常量参考 常量说明

通用可配置项

配置项 说明
enable 是否启用该链接
type 数据链接的类型,支持 mysql 与 sqlite,默认为 mysql
mode 该链接启用的模式 read = 可读, write = 可写 ,read+write = 读写
prefix 数据库表前缀

MySQL可配置项

配置项 说明
host 数据库主机
port 数据库端口
name 数据库用户名
user 数据库用户
password 数据库密码
charset 连接编码

SQLite可配置项

配置项 说明
path 数据库地址

执行SQL语句

直接运行SQL语句需要使用 \suda\database\statement\QueryStatement 对象,通过使用 \suda\application\Application->getDataSource() 方法来获取数据源,来进行操作,如:

// 对数据源进行写操作
$application->getDataSource()->write()->query(new QueryStatement('CREATE DATABASE test_demo'));

// 对数据库进行读操作
$query = (new QueryStatement('SELECT * FROM test_table'));
// 取全部
$query->setFetch(QueryStatement::FETCH_ALL);
// 执行
$rows = $application->getDataSource()->read()->query($query);

数据库CUDR操作

注意: 数据库建表需要手动建表