chamamme/noquery

A database query builder aimed at code beautification by minimizing the use of raw SQL in codes. NoQuery currently supports MySQL, Firebird & Interbase, PostgreSQL, SQLite3, Oracle, Microsoft SQL Server, Foxpro ODBC, Access ODBC, Informix, DB2, Sybase, Sybase SQL Anywhere, generic ODBC and Microsoft

v1.1.0 2018-08-18 20:12 UTC

This package is not auto-updated.

Last update: 2024-04-24 20:42:34 UTC


README

NoQuery is a php query builder running on ADODB library. It is aimed at making database interactions easier with less codes. NoQuery currently supports MySQL, Firebird-Interbase, PostgreSQL, SQLite3, Oracle, Microsoft SQL Server, Foxpro ODBC, Access ODBC, Informix, DB2, Sybase, Sybase SQL Anywhere, generic ODBC and Microsoft's ADO due its leverage on ADODB.

Installation

 > composer require chamamme/noquery

Configuration

NoQuery requires a configuration array. A typical configuration looks like
	
	 $config = [
	        'driver' 	=> 'mysqli', #eg. access,ado,ibase,fbsql,db2,informix,ldap,mssqlnative,netezza,odbc,odbtp,oci8,pdo,postgres9,proxy,ads,sybase_ase,sqlite3,sybase

		'server' 	=> "localhost",

		'username' 	=> "root",

		'password' 	=> "",

		'port' 		=> "3306",

		'database' 	=> "test_db",

		'debug' 	=> false

	];

Usage

It all starts with an instance of Tablet class which requires a configuration array variable.

$db = new  NoQuery\Builder( $config ) 

Now we are ready to interact with our database.

Methods

Name Params (Type) Description Example
table table (string) Tells orcons-db the database table to interact with. table('users')
select columns (array) Performs a select query. select(['name','age'])
update args (array) Performs an UPDATE statement . update(['name'=>'Andrew','age'=>10])
where conditions (array) Adds an where clause to sql statement where(["name = 'Chamamme'])
orWhere conditions (array) Adds an OR clause to sql statement orWhere([age = 25])
whereIn column (string) , conditions (array) Adds an WHERE IN clause to sql statement whereIn('age',[ 25 , 6 , 8 ])
whereNotIn column (string) , conditions (array) Adds an WHERE NOT IN clause to sql statement whereNotIn('age',[ 25 , 6 , 8 ])
whereBetween column (string) , conditions (array) Adds an BETWEEN clause to sql statement whereBetween('age',[ 18 ,19 ])
orWhereIn conditions (array) Adds an OR IN clause to sql statement orWhereIn(['name'=>'Andrew','age'=>25])
get limit (int), offset (int) Executes the sql statement get() or get(0,10)
run Executes the sql statement run()
toSql returns the final sql statment toSql()

Sample

require("vendor/autoload.php"); #change to the actual path of your composer autoload.php file

use NoQuery\Builder;

$config = [
       'driver' 	=> "mysqli",
   	'server' 	=> "localhost",
   	'username' 	=> "root",
   	'password' 	=> "",
   	'port' 		=> "3306",
   	'database' 	=> "test_db",
   	'debug' 	=> false
   ];
   
   $db = new Builder( $config ) ; #Instantiate the Builder class
   
   #select query
   $db->table('users')
   	->select(['name','gender','age'])
   	->get();
   	
   #update statement
   $db->table('users')
   	  ->update(['name'=>'Chamamme'])
   	  ->where(["id = 5","gender ='male'"])
   	  ->go();