agungdhewe/phpsqlutil

Utility for create SQL insert, update and delete

v1.2.2 2024-10-16 13:21 UTC

This package is auto-updated.

Last update: 2025-05-23 16:11:08 UTC


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);
}