mtchabok/database

PHP PDO 数据库类,用于处理数据库

v0.1.0 2020-03-16 09:45 UTC

This package is auto-updated.

Last update: 2024-09-23 16:57:12 UTC


README

PHP PDO 数据库类,用于处理数据库。

  • 无限管理数据库连接
  • 目标查询控制
  • 快速执行查询
  • PHP PDO 支持
  • 支持在查询中添加/编辑变量
  • 支持子查询
  • 支持pdo (mysql, sqlsrv)
  • 自动生成查询
  • 数据库/表/字段名称控制

安装

此包已在 Packagist 上列出。

composer require mtchabok/database

如何使用

创建连接对象

use \Mtchabok\Database\Connection;

$connection = new Connection('mysql:host=localhost;dbname=test;charset=utf8', 'root','');

$connection = Connection::newConnection('mysql:host=localhost;dbname=test;charset=utf8', 'root','');

$connection = (new Connection())
	->setDriver(Connection::DRIVER_MYSQL)
	->setServer('localhost')
	->setDatabase('test')
	->setUser('root')
	->setPass('')
	->setCharset(Connection::CHARSET_UTF8)
;

class my_connection extends Connection
{
	protected $_driver = Connection::DRIVER_MYSQL;
	protected $_server = 'localhost';
	protected $_database = 'test';
	protected $_user = 'root';
	protected $_charset = Connection::CHARSET_UTF8;
}
$connection = new my_connection();

$connection = new Connection\Mysql();
$connection->setDatabase('test');

创建选择/插入/更新/删除查询对象

use Mtchabok\Database\Select;
use Mtchabok\Database\Insert;
use Mtchabok\Database\Update;
use Mtchabok\Database\Delete;

$qSelect = $connection->newSelect('person');
$qInsert = $connection->newInsert('person');
$qUpdate = $connection->newUpdate('person');
$qDelete = $connection->newDelete('person');

$qSelect = (new Select('person'))->setConnection($connection);
$qInsert = (new Insert('person'))->setConnection($connection);
$qUpdate = (new Update('person'))->setConnection($connection);
$qDelete = (new Delete('person'))->setConnection($connection);

$qSelect = (Select::newSelect('person'))->setConnection($connection);

执行查询

$qSelect->setField(['id', 'name', 'mobile'])
	->addWhere('%mohammad%', 'LIKE', 'name')
	->setOrderBy('id', 'DESC')
;
$result = $qSelect->fetchAllObject(); // return array of objects

更多使用文档,请通过 IDE 使用此数据库包