veejay / sql
SQL builder
1.0.0
2026-03-24 16:53 UTC
Requires
- php: >=8.0
- ext-pdo: *
Requires (Dev)
- nyholm/nsa: ^1.3
- phpunit/phpunit: ^9.6
This package is auto-updated.
Last update: 2026-03-24 16:54:42 UTC
README
Simple SQL builder based on PDO.
Examples
Select
<?php use Veejay\Sql\Sql; $sql = new Sql('mysql:host=localhost;dbname=mydb', 'user', 'pass'); $rows = $sql->select() ->select('id', 'name') ->from('tbl') ->where('id>:id', ['id' => 1]) ->limit(5) ->query();
Insert
<?php use Veejay\Sql\Sql; $sql = new Sql('mysql:host=localhost;dbname=mydb', 'user', 'pass'); $sql->insert() ->into('tbl') ->values(['name' => 'qwerty']) ->execute();
Update
<?php use Veejay\Sql\Sql; $sql = new Sql('mysql:host=localhost;dbname=mydb', 'user', 'pass'); $sql->update() ->table('tbl') ->set(['name' => 'qwerty']) ->where('id=:id', ['id' => 1]) ->execute();
Delete
<?php use Veejay\Sql\Sql; $sql = new Sql('mysql:host=localhost;dbname=mydb', 'user', 'pass'); $sql->delete() ->from('tbl') ->where('id=:id', ['id' => 2]) ->execute();
Pure SQL requests
<?php use Veejay\Sql\Sql; $sql = new Sql('mysql:host=localhost;dbname=mydb', 'user', 'pass'); $result = $sql->execute( 'INSERT INTO tbl (id, name) VALUES (:id, :name)', ['id' => 1, 'name' => 'qwerty'] ); $rows = $sql->query( 'SELECT * FROM tbl WHERE id=:id', ['id' => 1] );
Transaction
<?php use Veejay\Sql\Sql; $sql = new Sql('mysql:host=localhost;dbname=mydb', 'user', 'pass'); $sql->transaction(); // begin $sql->rollback(); $sql->commit(); $sql->lastInsertId();
Requirements
- PHP 8.0+
- Extension
ext-pdo
Installation
composer require veejay/sql