跳到主要内容

DB_ExecuteQuery

描述

该函数用于在已打开的 SQLite 数据库上执行 SQL 查询语句。

参数名说明
DB:db要执行查询的数据库连接句柄
const query[]需要执行的 SQL 查询语句
OPEN_MP_TAGS:...不定数量的任意类型参数

返回值

执行成功时返回查询结果索引(从 1 开始),失败返回 0。

示例

// 实体存储模块

EntityStorage_SpawnAll(DB:connectionHandle)
{
// 从"entities"表中选择所有条目
new DBResult:db_result_set = DB_ExecuteQuery(connectionHandle, "SELECT * FROM `entities`");

// 验证数据库结果集句柄有效性
if (db_result_set)
{
// 执行相关操作...

// 释放结果集
DB_FreeResultSet(db_result_set);
}
}
// 游戏模式主文件

#include <entity_storage>

static DB:gDBConnectionHandle;

// ...

public OnGameModeInit()
{
// ...

// 创建数据库连接
gDBConnectionHandle = DB_Open("example.db");

// 验证数据库连接状态
if (gDBConnectionHandle)
{
print("成功连接数据库 \"example.db\"");
EntityStorage_SpawnAll(gDBConnectionHandle);
}
else
{
print("无法连接数据库 \"example.db\"");
}

// ...

return 1;
}

public OnGameModeExit()
{
// 关闭数据库连接
if (DB_Close(gDBConnectionHandle))
{
// 清理句柄
gDBConnectionHandle = DB:0;
}

// ...

return 1;
}

注意事项

注意

务必使用DB_FreeResultSet释放查询结果!

相关函数