tables
Pengembang dapat menggunakan fungsi pada table
untuk melakukan operasi terhadap tabel.
Table methods
findAll(args)
Method findAll
berfungsi untuk mendapatkan semua data berdasarkan parameters yang dikirim.
Args properties
name | type | description |
---|---|---|
table | string | nama tabel |
select | array of string | memilih kolom yang akan diminta (kosongkan untuk mengambil semua kolom) |
filter | string | filter data yang akan diminta (odata format) |
limit | number | batas jumlah data yang diminta (biasa digunakan untuk pagination) |
offset | number | jumlah data yang dilewati dari index pertama (digunakan sebagai pagination) |
orderBy | array of object | kolom yang digunakan untuk mengurutkan data |
orderBy[n].column | string | nama kolom |
orderBy[n].order | enum"asc", "desc" | opsi urutan bisa berisi "asc" atau "desc" |
include | array | daftar tabel relasi |
database | string | ID dari database yang akan digunakan (default adalah "main") |
transaction | object | database transaction (knex) |
lock | enum"UPDATE", "SHARE" | Mode row-locking untuk mendukung concurrent access |
skipLocked | boolean | Mode SKIP LOCKED untuk bypass row yang telah dikunci (row-locked) oleh proses lainnya |
Return
Promise<Object>
Object berisikan results(Array) dan count(Int)
Example
mengambil data dari table "books" dengan filter kolom "name".
findOne(args)
Method findOne
berfungsi untuk mendapatkan satu baris data berdasarkan filter yang dibuat.
Args properties
name | type | description |
---|---|---|
table | string | nama tabel |
select | array of string | memilih kolom yang akan diminta (kosongkan untuk mengambil semua kolom) |
filter | string | filter data yang akan diminta (odata format) |
include | array | daftar tabel relasi |
database | string | ID dari database yang akan digunakan (default adalah "main") |
transaction | object | database transaction (knex) |
lock | enum"UPDATE", "SHARE" | Mode row-locking untuk mendukung concurrent access |
skipLocked | boolean | Mode SKIP LOCKED untuk bypass row yang telah dikunci (row-locked) oleh proses lainnya |
Return
Promise<Object>
Example
mengambil data buku berdasarkan filter.
findById(args)
Method findById
berfungsi untuk mendapatkan data berdasarkan id.
Args properties
name | type | description |
---|---|---|
table | string | nama tabel |
select | array of string | memilih kolom yang akan diminta (kosongkan untuk mengambil semua kolom) |
id | string (uuid) | id data yang akan diambil |
include | array | daftar tabel relasi |
database | string | ID dari database yang akan digunakan (default adalah "main") |
transaction | object | database transaction (knex) |
lock | enum"UPDATE", "SHARE" | Mode row-locking untuk mendukung concurrent access |
skipLocked | boolean | Mode SKIP LOCKED untuk bypass row yang telah dikunci (row-locked) oleh proses lainnya |
Return
Promise<Object>
Example
mengambil data buku berdasarkan id.
create(args)
Method create
berfungsi untuk membuat data baru berdasarkan parameters yang dikirim.
Args properties
name | type | description |
---|---|---|
table | string | nama tabel |
data | any object | berisi data sesuai kolom tabel |
transaction | object | database transaction (knex) |
event | boolean | jika bernilai true maka table event akan tertrigger |
database | string | ID dari database yang akan digunakan (default adalah "main") |
Return
Promise<Object>
data yang berhasil dibuat.
Example
melakukan operasi insert data pada table "books" dengan data bersisi "name: 'new book'"
update(args)
Method update
berfungsi untuk mengupdate data sesuai id.
Args properties
name | type | description |
---|---|---|
table | string | nama tabel |
id | string (uuid) | id data yang akan di-update |
data | any object | data untuk menghupdate |
transaction | object | database transaction (knex) |
event | boolean | jika bernilai true maka akan dilakukan propagasi table event |
database | string | ID dari database yang akan digunakan (default adalah "main") |
Return
Promise<Object>
data yang berhasil update.
Example
melakukan operasi update pada table "books" berdasarkan id.
destroy(args)
Method destroy
berfungsi untuk menghapus data sesuai id.
Args properties
name | type | description |
---|---|---|
table | string | nama tabel |
id | string (uuid) | id data yang akan dihapus |
transaction | object | database transaction (knex) |
event | boolean | jika bernilai true maka akan dilakukan propagasi table event |
database | string | ID dari database yang akan digunakan (default adalah "main") |
Return
Promise<string>
id data yang berhasil hapus.
Example
menghapus data berdasarkan id.
createTransaction(db,isolation)
Method createTransaction
berfungsi untuk membuat transaction object. Argumen bersifat opsional.
Arguments
name | type | description |
---|---|---|
db | string | ID dari database yang akan digunakan (default adalah "main") |
isolation | enum"READ_COMMITED", "REPEATABLE_READ", "SERIALIZABLE" | Level isolasi transaksi (default PgSQL adalah READ_COMMITED) |
Return
Promise<Object>
transaction object.
Example
membuat transaction object, melakukan commit dan rollback