sql / genericsqlformat
SQL 辅助工具,通用 SQL 格式化
V2
2021-12-15 16:15 UTC
Requires
- php: >=7.0.0
This package is auto-updated.
Last update: 2024-09-21 01:54:58 UTC
README
Composer 安装
composer require sql/genericsqlformat
描述
simple query generator for PHP
OBS
- 所有类都有 manualQueryBuilder() 方法,您可以通过它传递一个包含查询的字符串
- 数据库连接设置在 Config 文件夹中的 Config.php 文件中
- 如果您不想使用环境,则编辑配置文件
需求
- PHP 7.0+
- Composer
- ENVIRONMENT VARIABLES
环境变量
- GENERICSQLFORMAT_HOST
- GENERICSQLFORMAT_USER
- GENERICSQLFORMAT_PASSWORD
- GENERICSQLFORMAT_DATABASENAME
- GENERICSQLFORMAT_PORT // 5432 (PostgreSQL), 3306 (MySQL), 1521 (Oracle)
- GENERICSQLFORMAT_DRIVE //mysql, pgsql, sqlite, sqlsrv, oci, mssql, dblib, oracle,
使用方法
- 选择
<?php require_once __DIR__.'vendor/autoload.php'; //library use sql\genericsqlformat\Select\Select; //query //enable debug mode $select = new Select(true); //no debug mode $select = new Select(); $select->setFrom('users'); $select->setColumns(['id', 'nameuser']); $select->setWhere(['id' => 1,'nameuser'=>'teste'],['nameuser'=>'=','id'=>'like'], ['OR']); $select->setGroup(['id']); $select->setOrder(['id']); $select->setLimit(1); $select->run(); ?>
- 选择连接
<?php require_once __DIR__.'vendor/autoload.php'; //library use sql\genericsqlformat\Select\Select; //query //enable debug mode $select = new Select(true); //no debug mode $select = new Select(); $select->setFrom('users'); $select->setColumns(['id', 'nameuser']); $select->setJoin('LEFT','users_groups', 'users.id = users_groups.id_user'); $select->setJoin('FULL','users_groups', 'users.id = users_groups.id_user'); $select->setJoin('RIGHT','users_groups', 'users.id = users_groups.id_user'); $select->setJoin('INNER','users_groups', 'users.id = users_groups.id_user'); $select->setWhere(['id' => 1,'nameuser'=>'teste'],['nameuser'=>'=','id'=>'like'], ['OR']); $select->setGroup(['id']); $select->setOrder(['id']); $select->setLimit(1); $select->run(); ?>
- 更新
<?php require_once __DIR__.'vendor/autoload.php'; //library use sql\genericsqlformat\Update\Update; //query //enable debug mode $update = new Update(true); //no debug mode $update = new Update(); $update->setFrom('users'); $update->setColumnsSet(['id' => 1,'nameuser'=>'teste']); $update->setWhere(['id' => 1,'nameuser'=>'teste'],['nameuser'=>'=','id'=>'like'], ['OR']); $update->run(); ?>
- 插入
- OBS
- setDates 方法期望一个数组,其中键是表列,值是要插入该列的值
<?php require_once __DIR__.'vendor/autoload.php'; //library use sql\genericsqlformat\Insert\Insert; //query //enable debug mode $insert = new Insert(true); //no debug mode $insert = new Insert(); $insert->setFrom('users'); $insert->setDates(['nameuser' => 'teste4', 'birthday' => '2021-12-13','email'=>'tetse1','passworduser'=>'teste2','createdat'=>'2020-12-13']); $insert->run(); ?>
- OBS
- 删除
<?php require_once __DIR__.'vendor/autoload.php'; //library use sql\genericsqlformat\Delete\Delete; //query //enable debug mode $delete = new Delete(true); //no debug mode $delete = new Delete(); $delete->setFrom("users"); $delete->setWhere(["id"=>1], ["="]); $delete->run(); ?>