agungdhewe / phpsqlutil
Utility for create SQL insert, update and delete
v1.2.2
2024-10-16 13:21 UTC
Requires
- php: ^8.3
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
This library is used to simplify Insert, Update and Delete using SQL Command.
Add this library to your project
composer require agungdhewe/phpsqlutil
Example
Insert Data
use AgungDhewe\PhpSqlUtil\SqlInsert;
// initialize database connection
$db = new PDO(...);
$obj = new stdClass();
$obj->bank_id = 'AAA';
$obj->bank_name = 'Test AAA';
$obj->country_id = 'ID';
$tablename = "mst_bank";
$cmd = new SqlInsert($tablename, $obj);
$sql = $cmd->getSqlString();
$stmt = $db->prepare($sql);
$params = $cmd->getParameter();
$stmt->execute($params);
If we want to insert new row, using previous initiation, we need only providing object that will represent new row:
$newdata = new stdClass();
$newdata->bank_id = 'BBB';
$newdata->bank_name = 'Test BBB';
$params = $cmd->getParameter($newdata);
$stmt->execute($params);
Update Data
use AgungDhewe\PhpSqlUtil\SqlInsert;
// initialize database connection
$db = new PDO(...);
$obj = new stdClass();
$obj->bank_id = 'AAA';
$obj->bank_name = 'Bank AAA';
$obj->bank_code = 'BBB-01';
$tablename = "mst_bank";
$cmd = new SqlUpdate($tablename, $obj, ['bank_id']);
$sql = $cmd->getSqlString();
$stmt = $db->prepare($sql);
$params = $cmd->getParameter();
$stmt->execute($params);
Delete Data
use AgungDhewe\PhpSqlUtil\SqlDelete;
// initialize database connection
$db = new PDO(...);
$obj = new stdClass();
$obj->bank_id = 'AAA';
$cmd = new SqlDelete("mst_bank", $obj, ['bank_id']);
$sql = $cmd->getSqlString();
$stmt = $db->prepare($sql);
$params = $cmd->getKeyParameter();
$stmt->execute($params);
Check existing data and update
use AgungDhewe\PhpSqlUtil\SqlDelete;
// initialize database connection
$db = new PDO(...);
$cmd = new SqlSelect("mst_bank", ['bank_id']);
$sql = $cmd->getSqlString();
$stmt = $db->prepare($sql);
$key = new stdClass();
$key->bank_id = 'AAA';
$params = $cmd->getKeyParameter($key);
$stmt->execute($params);
$row = $stmt->fetch();
// update data dari row
if ($row) {
$obj = (object)$row;
$cmd = new SqlUpdate("mst_bank", $obj, ['bank_id']);
$sql = $cmd->getSqlString();
$stmt = $db->prepare($sql);
$newdata = new stdClass();
$newdata->bank_name = 'Ini ganti nama bank';
$params = $cmd->getParameter($newdata);
$stmt->execute($params);
}