mariadb query

From Onset Developer Wiki
mariadb query

Type: Function
Context: Server
Introduced: v1.0

NOTICE

This function is provided by the official MariaDB plugin.

Description

Executes a query in a thread. Execution of order is as called.

Syntax

mariadb_query(handle, query_str [, callback_func, callback_args...])

Parameters

  • handle
    Connection handle.
  • query_str
    The query to be executed.
  • callback_func (optional)
    The function that will be called when the query was executed.
  • callback_args (optional)
    Multiple arguments to pass to the callback_func.

Return Value

  • Returns true if the query was successfully queued.

Example

function cmd_iplookup(player, ip)
	if (PlayerData[player].admin < 4) then
		return AddPlayerChat(player, "Insufficient permission")
	end

	if (ip == nil) then
		return AddPlayerChat(player, "Usage: /iplookup <ip>")
	end

	local query = mariadb_prepare(sql, "SELECT DISTINCT(id) FROM log_login WHERE ip = '?';", ip)

	mariadb_query(sql, query, OnIpLookup, player, ip)
end
AddCommand("iplookup", cmd_iplookup)

function OnIpLookup(player, ip)
	local rows = mariadb_get_row_count()

	if (rows == 0) then
		AddPlayerChat(player, "No account found for that IP")
	else
		for i=1, rows do
			local id = mariadb_get_value_index_int(i, 1)

			AddPlayerChat(player, "Account ID: "..id)
		end
	end
end

See also