Update README
This commit is contained in:
parent
4814f5f787
commit
7c48eecb1a
103
README.md
103
README.md
@ -31,26 +31,28 @@ To include Query in your PHP project, just include the `autoload.php` file. This
|
||||
|
||||
Create a connection array or object similar to this:
|
||||
|
||||
<?php
|
||||
```php
|
||||
<?php
|
||||
|
||||
$params = array(
|
||||
'type' => 'mysql',
|
||||
'host' => 'localhost',
|
||||
'user' => 'root',
|
||||
'pass' => '',
|
||||
'port' => '3306',
|
||||
'database' => 'test_db',
|
||||
$params = array(
|
||||
'type' => 'mysql',
|
||||
'host' => 'localhost',
|
||||
'user' => 'root',
|
||||
'pass' => '',
|
||||
'port' => '3306',
|
||||
'database' => 'test_db',
|
||||
|
||||
// Only required
|
||||
// SQLite or Firebird
|
||||
'file' => '/path/to/db/file',
|
||||
// Only required
|
||||
// SQLite or Firebird
|
||||
'file' => '/path/to/db/file',
|
||||
|
||||
// Optional paramaters
|
||||
'prefix' => 'tbl_', // Database table prefix
|
||||
'alias' => 'old' // Connection name for the Query function
|
||||
);
|
||||
// Optional paramaters
|
||||
'prefix' => 'tbl_', // Database table prefix
|
||||
'alias' => 'old' // Connection name for the Query function
|
||||
);
|
||||
|
||||
$db = Query($params);
|
||||
$db = Query($params);
|
||||
```
|
||||
|
||||
The parameters required depend on the database.
|
||||
|
||||
@ -58,19 +60,25 @@ The parameters required depend on the database.
|
||||
|
||||
You can use the `Query()` function as a reference to the last connected database. E.g.
|
||||
|
||||
Query()->get('table_name');
|
||||
```php
|
||||
Query()->get('table_name');
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
$result = Query()->query($sql);
|
||||
```php
|
||||
$result = Query()->query($sql);
|
||||
```
|
||||
|
||||
If the `alias` key is set in the parameters, you can refer to a specific database connection
|
||||
|
||||
// Set the alias in the connection parameters
|
||||
$params['alias'] = 'old';
|
||||
```php
|
||||
// Set the alias in the connection parameters
|
||||
$params['alias'] = 'old';
|
||||
|
||||
// Connect to the legacy database
|
||||
Query('old')->query($sql);
|
||||
// Connect to the legacy database
|
||||
Query('old')->query($sql);
|
||||
```
|
||||
|
||||
### Running Queries
|
||||
Query uses the same interface as CodeIgniter's [Active Record class](http://ellislab.com/codeigniter/user-guide/database/active_record.html). However, it does not implement the `update_batch` or caching methods.
|
||||
@ -86,22 +94,26 @@ To run a plain query, `$db->query($sql)`
|
||||
|
||||
An example of a moderately complex query:
|
||||
|
||||
$query = $db->select('id, key as k, val')
|
||||
->from('table t')
|
||||
->where('k >', 3)
|
||||
->or_where('id !=' 5)
|
||||
->order_by('val', 'DESC')
|
||||
->limit(3, 1)
|
||||
->get();
|
||||
```php
|
||||
$query = $db->select('id, key as k, val')
|
||||
->from('table t')
|
||||
->where('k >', 3)
|
||||
->or_where('id !=' 5)
|
||||
->order_by('val', 'DESC')
|
||||
->limit(3, 1)
|
||||
->get();
|
||||
```
|
||||
|
||||
This will generate a query similar to (with this being the output for a Postgres database):
|
||||
|
||||
SELECT "id", "key" AS "k", "val"
|
||||
FROM "table" "t"
|
||||
WHERE "k" > ?
|
||||
OR "id" != ?
|
||||
ORDER BY "val" DESC
|
||||
LIMIT 3 OFFSET 1
|
||||
```sql
|
||||
SELECT "id", "key" AS "k", "val"
|
||||
FROM "table" "t"
|
||||
WHERE "k" > ?
|
||||
OR "id" != ?
|
||||
ORDER BY "val" DESC
|
||||
LIMIT 3 OFFSET 1
|
||||
```
|
||||
|
||||
|
||||
To retreive the results of a query, use the PDO method [fetch](http://php.net/manual/en/pdostatement.fetch.php) and/or [fetchAll](http://php.net/manual/en/pdostatement.fetchall.php).
|
||||
@ -114,18 +126,21 @@ To retreive the results of a query, use the PDO method [fetch](http://php.net/ma
|
||||
### Inserting / Updating
|
||||
|
||||
An example of an insert query:
|
||||
|
||||
$query = $db->set('foo', 'bar')
|
||||
->set('foobar', 'baz')
|
||||
->where('foo !=', 'bar')
|
||||
->insert('table');
|
||||
```php
|
||||
$query = $db->set('foo', 'bar')
|
||||
->set('foobar', 'baz')
|
||||
->where('foo !=', 'bar')
|
||||
->insert('table');
|
||||
```
|
||||
|
||||
An example of an update query:
|
||||
|
||||
$query = $db->set('foo', 'bar')
|
||||
->set('foobar', 'baz')
|
||||
->where('foo !=', 'bar')
|
||||
->update('table');
|
||||
```php
|
||||
$query = $db->set('foo', 'bar')
|
||||
->set('foobar', 'baz')
|
||||
->where('foo !=', 'bar')
|
||||
->update('table');
|
||||
```
|
||||
|
||||
The `set` method can also take an array as a paramater, instead of setting individual values.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user