跳到主要内容

db_get_field_assoc

注意

这个$函数以小写字母开头。

描述

通过字段名称获取当前结果行的字符串内容。

参数名说明
DBResult:dbresult查询结果句柄(由db_query返回)
field[]目标字段名称
result[]存储结果的字符数组
maxlength结果的最大存储长度

返回值

  • 1 - 结果集句柄有效且字段存在
  • 0 - 结果集句柄无效或字段不存在

示例

// 示例模块

// ...

Examples_ListNames(DB:dbConnectionHandle)
{
// 执行数据库查询
new DBResult:db_result_set = db_query(dbConnectionHandle, "SELECT `name` FROM `examples`");

if (db_result_set)
{
// 预分配结果存储空间
new result[256];

// 遍历结果集
do
{
// 获取'name'字段内容
db_get_field_assoc(db_result_set, "name", result, sizeof(result));
}
while (db_next_row(db_result_set)); // 跳转至下一行

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

// ...

#include <examples>

static DB:gDBConnectionHandle;

// ...

public OnGameModeInit()
{
// ...

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

if (gDBConnectionHandle)
{
print("成功连接数据库 \"example.db\"");
Examples_ListNames(gDBConnectionHandle);
}
else
{
print("无法连接数据库 \"example.db\"");
}

return 1;
}

public OnGameModeExit()
{
// 关闭数据库连接
if (db_close(gDBConnectionHandle))
{
gDBConnectionHandle = DB:0; // 重置句柄
}
return 1;
}

注意事项

注意

使用非法的结果集句柄将导致服务器崩溃!请始终通过db_query获取有效的查询结果

相关函数