Saltar a contenido

API SQL (QueryManager)

GetConnection(connectionName)

Obtiene o crea una conexión de base de datos con nombre (almacenada en caché por estado Lua).

  • Retorna: QueryManager
local db = GetConnection("GameDB")

Métodos de QueryManager

Método Descripción
Connect(dsn, user, pass) Abrir conexión ODBC
ExecQuery(sql) Ejecutar una consulta SQL
Fetch() Obtener siguiente fila de resultados
Close() Cerrar la consulta (no la conexión)
GetResult(column) Obtener resultado por nombre de columna (string)
GetStringResult(column) Obtener resultado de texto
GetAsInteger(column) Obtener resultado entero
GetAsFloat(column) Obtener resultado flotante
GetAsInteger64(column) Obtener resultado entero de 64 bits
GetAsString(column) Obtener resultado de texto (alternativa)
GetAsBinary(column) Obtener datos binarios como cadena
BindParameterAsBinary(paramNum, data) Vincular parámetro binario
BindParameterAsString(paramNum, data) Vincular parámetro de texto
-- Example: Query player data
local db = GetConnection("GameDB")
db:Connect("MuOnline_GameDB", "sa", "password")
db:ExecQuery("SELECT Reset, MasterReset FROM Character WHERE Name = 'TestChar'")

if db:Fetch() then
    local resets = db:GetAsInteger("Reset")
    local mresets = db:GetAsInteger("MasterReset")
    LogAdd(LOG_BLUE, "Resets: " .. resets .. " MR: " .. mresets)
end

db:Close()