self:execute
Server
Commits the prepared query on the database
Syntax
local promise = self:execute()This function returns a promise and starts processing the query. Use thread:await inside a thread to retrieve the result.
- Inside a thread —
self:await(db_query:execute())yields until the operation completes, then returns the resolved values - Outside a thread — the promise can still be created, but must be awaited from within a thread to retrieve the result
Parameters
| No parameters are accepted by this function |
|---|
Returns
| Type | Name | Description |
|---|---|---|
promise | promise | Refer Settlements section |
Settlements
| Type | Name | Description |
|---|---|---|
bool | status | true on success, false on failure |
bool | resolved | true |
string | rejected | Error message describing the failure |
Examples
local db = database.create("127.0.0.1", "root", "", "vital_sandbox")
thread.create(function(self)
local ok, err = self:await(db:table("players")
:insert({ name = "aviril", score = 0 })
:execute())
if not ok then
engine.print("error", err)
end
end):resume()local db = database.create("127.0.0.1", "root", "", "vital_sandbox")
thread.create(function(self)
local ok, err = self:await(db:table("players")
:update({ score = 500 })
:where("name", "=", "aviril")
:execute())
if not ok then
engine.print("error", err)
end
end):resume()local db = database.create("127.0.0.1", "root", "", "vital_sandbox")
thread.create(function(self)
local ok, err = self:await(db:table("players")
:delete()
:where("name", "=", "aviril")
:execute())
if not ok then
engine.print("error", err)
end
end):resume()