melnyin/sql-query-builder-adapter 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

melnyin/sql-query-builder-adapter

Composer 安装命令:

composer require melnyin/sql-query-builder-adapter

包简介

SQL Query Builder Adapter (php5.5+, mysql)

README 文档

README

support:

  • mysql

require:

  • php5.5+
  • php-pdo

composer install:

php composer.phar require melnyin/sql-query-builder-adapter

packagist link: https://packagist.org/packages/melnyin/sql-query-builder-adapter

Cookbook:

\MI\SQL\QB\Adapter

$config = [
    'adapter'     => 'mysql',
    'unix_socket' => 'path/to/unix',
    'host'        => 'localhost(127.0.0.1)',
    'username'    => 'root',
    'password'    => 'root',
    'dbname'      => 'root',
    'charset'     => 'utf8',
];

$qbAdapter = new \MI\SQL\QB\Adapter($config);

\MI\SQL\QB\Query

$qbAdapter = new \MI\SQL\QB\Adapter($config);

$qbAdapter->query("SELECT `foo` FROM `bar`");
$qbAdapter->query("DELETE FROM `foo`");

\MI\SQL\QB\Select

Simple example:

$qbAdapter = new \MI\SQL\QB\Adapter($config);

$select = $qbAdapter
  ->select()
  ->from('foo')
  ->query();
  
  SELECT * FROM foo

Full example

$qbAdapter = new \MI\SQL\QB\Adapter($config);

$select = $qbAdapter
  ->select('f.id', 'f.title', 'b.date', 'b.phone', 'fb.status')
  ->from('foo', 'f')
  ->join('bar', 'b', ['b.id' => 'f.bar_id'], 'INNER')
  ->join('foobar', 'fb', ['fb.id' => 'b.foobar_id'], 'LEFT')
  ->where('fb.status', ':status')
  ->where([
    'f.id <> :id',
    'f.title LIKE :title",
  ])
  ->param('status', 'open')
  ->param([
    'id'    => 3,
    'title' => 'happyChild',
  ])
  ->order('f.id', 'DESC')
  ->limit(10)
  ->offset(5)
  ->query();
  
  SELECT f.id, f.title, b.date, b.phone, fb.status 
  FROM foo AS f 
  INNER JOIN bar AS b ON b.id = f.bar_id
  LEFT JOIN foobar AS fb ON fb.id = b.foobar_id
  WHERE fb.status = 'open' 
    AND f.id <> 3
    AND f.title LIKE '%happyChild%'
  ORDER BY f.id DESC
  LIMIT 10
  OFFSET 5

Select ARRAY Result

  $select->toArray();

Select OBJECT Result

  $select->toObject();

Select COUNT Result

  $select->count();

\MI\SQL\QB\Insert

$qbAdapter = new \MI\SQL\QB\Adapter($config);

$insert = $qbAdapter
  ->insert('foo')
  ->values('status', 'create')
  ->values([
    'title' => 'bar',
    'date' => '2015-12-06',
  ])
  ->query();

  INSERT INTO foo (status, title, date) VALUES ('create', 'bar', '2015-12-06')

\MI\SQL\QB\Update

$qbAdapter = new \MI\SQL\QB\Adapter($config);

$update = $qbAdapter
  ->update('foo')
  ->set('title', 'bar')
  ->set([
    'date'    => '2015-12-06',
    'status'  => 'create',
  ])
  ->where('id', 5)
  ->query();

  UPDATE foo SET title = 'bar', date = '2015-12-06', status = 'create' WHERE id = 5

\MI\SQL\QB\Delete

$qbAdapter = new \MI\SQL\QB\Adapter($config);

$delete = $qbAdapter
  ->delete()
  ->from('foo')
  ->where('id', 3)
  ->query();

  DELETE FROM foo WHERE id = 3

统计信息

  • 总下载量: 26
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2015-12-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固