veejay/sql

SQL builder

Maintainers

Package info

github.com/Veejayspb/sql

pkg:composer/veejay/sql

Statistics

Installs: 4

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.0 2026-03-24 16:53 UTC

This package is auto-updated.

Last update: 2026-03-24 16:54:42 UTC


README

Simple SQL builder based on PDO.

License: MIT

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