پرش به مطلب اصلی

db_num_fields

هشدار

This function starts with a lowercase letter.

هشدار

This function was added in SA-MP 0.3.7 R1 and will not work in earlier versions!

توضیحات

تعداد فیلدهای موجود در نتیجه‌ای که از db_query برگردونده شده رو می‌گیره.

اسمتوضیح
DBResult:dbresultنتیجه‌ای که از db_query برگردونده شده.

مقادیر برگشتی

تعداد فیلدها در نتیجه.

مثال‌ها

// انتخاب چندین فیلد از جدول "players"
new DBResult:db_result = db_query(db_handle, "SELECT `name`, `score`, `money` FROM `players`");

// چک کن که آیا کوئری موفق بوده
if (db_result)
{
new fields = db_num_fields(db_result);
printf("Number of fields in result: %d", fields); // خروجی: Number of fields in result: 3

// نام‌های تمام فیلدها رو چاپ کن
for (new i = 0; i < fields; i++)
{
new field_name[32];
db_field_name(db_result, i, field_name, sizeof(field_name));
printf("Field %d: %s", i, field_name);
}

// آزاد کردن حافظه
db_free_result(db_result);
}

نکته‌ها

نکته

این تابع برای دریافت تعداد ستون‌های موجود در نتیجه کوئری مفیده. می‌تونی از این اطلاعات برای حلقه زدن روی فیلدها استفاده کنی.

هشدار

نتایج باید بعد از اتمام کار با db_free_result آزاد بشن. عدم انجام این کار باعث memory leak میشه.

تابع‌های مرتبط

  • db_open: باز کردن اتصال به پایگاه داده SQLite
  • db_close: بستن اتصال به پایگاه داده SQLite
  • db_query: کوئری زدن به پایگاه داده SQLite
  • db_free_result: آزاد کردن حافظه نتیجه از db_query
  • db_num_rows: گرفتن تعداد ردیف‌های موجود در نتیجه
  • db_next_row: رفتن به ردیف بعدی
  • db_field_name: برگردوندن نام یک فیلد در یک index خاص