Grammar
class Grammar extends Grammar (View source)
Properties
protected string | $wrapper | Berisi keyword identifier untuk sistem database tertentu. |
from Grammar |
protected Connection | $connection | Berisi instance koneksi database untuk grammar saat ini. |
from Grammar |
string | $datetime | Format default untuk menyimpan DateTime. |
|
protected array | $components | List seluruh komponen query serta urutan pembangunannya. |
Methods
Ambil string parameter query yang sesuai untuk sebuah value.
Buat list nama kolom yang dibungkus dan dipisahkan dengan koma.
Buang bagian kosong dari array segmen sql.
Compile klausa nested WHERE.
Compile klausa WHERE sederhana.
Compile klausa WHERE IN.
Compile klausa WHERE NOT IN.
Compile klausa WHERE BETWEEN.
Compile klausa WHERE NOT BETWEEN.
Compile klausa WHERE NULL.
Compile klausa WHERE NOT NULL.
Compile klausa WHERE mentah.
Ubah short-cut sql menjadi sql biasa agar bisa digunakan oleh PDO.
Details
__construct(Connection $connection)
Buat instance database grammar baru.
string
wrap_table(string $table)
Bungkus tabel dalam keyword identifier.
string
wrap(string $value)
Bungkus vlue dalam keyword identifier.
protected string
wrap_value(string $value)
Bungkus sebuah string value dalam keyword identifier.
final string
parameterize(array $values)
Buat parameter query dari sebuah array.
// Mereturn '?, ?, ?', yang nantinya bisa digunakan untuk place-holder
$parameters = $grammar->parameterize([1, 2, 3]);
// Mereturn '?, "Budi"' karena ada raw query yang digunakan
$parameters = $grammar->parameterize([1, DB::raw('Budi')]);
final string
parameter(mixed $value)
Ambil string parameter query yang sesuai untuk sebuah value.
// Mereturn sebuah '?' untuk place-holder
$value = $grammar->parameter('Budi Purnomo');
// Mereturn 'Budi Purnomo' karena ada raw query yang digunakan
$value = $grammar->parameter(DB::raw('Budi Purnomo'));
final string
columnize(array $columns)
Buat list nama kolom yang dibungkus dan dipisahkan dengan koma.
// Mereturn '"Budi", "Purnomo"' ketika identifiernya berupa tanda kutip
$columns = $grammar->columnize(['Budi', 'Purnomo']);
string
select(Query $query)
Kompilasi statement SELECT.
final protected array
components(Query $query)
Buat sql untuk setiap komponen query.
final protected string
concatenate(array $components)
Buang bagian kosong dari array segmen sql.
protected string
selects(Query $query)
Compile klausa SELECT.
protected string
aggregate(Query $query)
Compile klausa agregasi SELECT.
protected string
from(Query $query)
Compile klausa FROM.
protected
joins(Query $query)
No description
final protected string
wheres(Query $query)
Compile klausa WHERE.
protected string
where_nested(array $where)
Compile klausa nested WHERE.
protected string
where(array $where)
Compile klausa WHERE sederhana.
protected string
where_in(array $where)
Compile klausa WHERE IN.
protected string
where_not_in(array $where)
Compile klausa WHERE NOT IN.
protected string
where_between(array $where)
Compile klausa WHERE BETWEEN.
protected string
where_not_between(array $where)
Compile klausa WHERE NOT BETWEEN.
protected string
where_null(array $where)
Compile klausa WHERE NULL.
protected string
where_not_null(array $where)
Compile klausa WHERE NOT NULL.
final protected string
where_raw(array $where)
Compile klausa WHERE mentah.
protected string
groupings(Query $query)
Compile klausa GROUP BY.
protected string
havings(Query $query)
Compile klausa HAVING.
protected string
orderings(Query $query)
Compile klausa ORDER BY.
protected string
limit(Query $query)
Compile klausa LIMIT.
protected string
offset(Query $query)
Compile klausa OFFSET.
string
insert(Query $query, array $values)
Compile sql INSERT.
Method ini menangani kompilasi insert row tunggal dan batch.
string
insert_get_id(Query $query, array $values, string $column)
Compile sql INSERT dan return ID-nya.
string
update(Query $query, array $values)
Compile sql UPDATE.
string
delete(Query $query)
Compile sql DELETE.
string
shortcut(string $sql, array $bindings)
Ubah short-cut sql menjadi sql biasa agar bisa digunakan oleh PDO.