---
title: "DB_GetFieldFloat | open.mp"
description: "محتوای یک فیلد رو به عنوان یک عدد اعشاری با ایندکس فیلد مشخص شده دریافت می‌کند."
canonical: https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldFloat
language: fa
---

# DB\_GetFieldFloat

## توضیحات

این تابع محتوای یک فیلد رو به عنوان یک عدد اعشاری با ایندکس فیلد مشخص شده دریافت می‌کند.

| نام | توضیحات |
| --- | --- |
| DBResult:result | نتیجه‌ای که داده‌ها از اون گرفته میشه. |
| field = 0 | فیلدی که داده‌ها از اون گرفته میشه. |

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

مقدار بازیابی شده به عنوان یک عدد اعشاری.

## مثال‌ها

```c
// examples.inc

// ...

static FindFieldIndexByName(DBResult:dbResultSet, const fieldName[])
{
    // Return value variable with default return value
    new ret = -1;

    // Field count
    new field_count = DB_GetFieldCount(dbResultSet);

    // Current field name
    new current_field_name[32];

    // Iterate through all fields
    for (new field_index; field_index < field_count; field_index++)
    {
        // Get field name
        if (DB_GetFieldName(dbResultSet, field_index, current_field_name, sizeof current_field_name))
        {
            // Compare searched field name to current field name
            if (!strcmp(fieldName, current_field_name))
            {
                // Success, store field index to return value variable
                ret = field_index;

                // Break out of the loop
                break;
            }
        }
    }

    // Return found field index or "-1"
    return ret;
}

Float:Examples_CalculateSum(DB:dbConnectionHandle)
{
    // Return value variable
    new Float:ret;

    // Database result set
    new DBResult:db_result_set = DB_ExecuteQuery("SELECT `value` FROM `examples`");

    // If database result set is valid
    if (db_result_set)
    {
        // Get target field index
        new target_field_index = FindFieldIndexByName(db_result_set, "value");

        // Check if field index is valid
        if (target_field_index >= 0)
        {
            // Do operations
            do
            {
                // Add value from "example" field to the return value variable
                ret += DB_GetFieldFloat(db_result_set, target_field_index);
            }

            // While next row could be fetched
            while (DB_SelectNextRow(db_result_set));
        }

        // Free result set
        DB_FreeResultSet(db_result_set);
    }

    // Return calculated sum
    return ret;
}
```

```c
// mode.pwn

// ...

#include <examples>

static DB:gDBConnectionHandle;

// ...

public OnGameModeInit()
{
    // ...

    // Create a connection to a database
    gDBConnectionHandle = DB_Open("example.db");

    // If connection to the database exists
    if (gDBConnectionHandle)
    {
        // Successfully created a connection to the database
        print("Successfully created a connection to database \"example.db\".");
        printf("Calculated sum: %f", Examples_CalculateSum(gDBConnectionHandle));
    }
    else
    {
        // Failed to create a connection to the database
        print("Failed to open a connection to database \"example.db\".");
    }

    // ...

    return 1;
}

public OnGameModeExit()
{
    // Close the connection to the database if connection is open
    if (DB_Close(gDBConnectionHandle))
    {
        // Extra cleanup
        gDBConnectionHandle = DB:0;
    }

    // ...

    return 1;
}
```

## نکات

هشدار

استفاده از یک handle نامعتبر غیر از صفر سرور شما رو کرش می‌کنه! یک handle اتصال پایگاه داده معتبر رو با استفاده از [DB\_ExecuteQuery](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_ExecuteQuery) دریافت کنید.

## توابع مرتبط

-   [DB\_Open](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_Open_Modern): اتصال به پایگاه داده SQLite باز کنید
-   [DB\_Close](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_Close_Modern): اتصال به پایگاه داده SQLite بسته کنید
-   [DB\_ExecuteQuery](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_ExecuteQuery): پایگاه داده SQLite رو کوئری کنید
-   [DB\_FreeResultSet](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_FreeResultSet): حافظه نتیجه رو از DB\_ExecuteQuery آزاد کنید
-   [DB\_GetRowCount](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetRowCount): تعداد سطرهای یک نتیجه رو دریافت کنید
-   [DB\_SelectNextRow](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_SelectNextRow): به سطر بعدی بروید
-   [DB\_GetFieldCount](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldCount): تعداد فیلدهای یک نتیجه رو دریافت کنید
-   [DB\_GetFieldName](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldName): نام یک فیلد در ایندکس مشخص رو برگردونه
-   [DB\_GetFieldString](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldString): محتوای فیلد با ID مشخص از سطر نتیجه فعلی رو دریافت کنید
-   [DB\_GetFieldStringByName](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldStringByName): محتوای فیلد با نام مشخص از سطر نتیجه فعلی رو دریافت کنید
-   [DB\_GetFieldInt](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldInt): محتوای فیلد به عنوان عدد صحیح با ID مشخص از سطر نتیجه فعلی رو دریافت کنید
-   [DB\_GetFieldIntByName](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldIntByName): محتوای فیلد به عنوان عدد صحیح با نام مشخص از سطر نتیجه فعلی رو دریافت کنید
-   [DB\_GetFieldFloat](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldFloat): محتوای فیلد به عنوان عدد اعشاری با ID مشخص از سطر نتیجه فعلی رو دریافت کنید
-   [DB\_GetFieldFloatByName](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetFieldFloatByName): محتوای فیلد به عنوان عدد اعشاری با نام مشخص از سطر نتیجه فعلی رو دریافت کنید
-   [DB\_GetMemHandle](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetMemHandle): handle حافظه برای پایگاه داده SQLite که با DB\_Open باز شده رو دریافت کنید
-   [DB\_GetLegacyDBResult](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetLegacyDBResult): handle حافظه برای کوئری SQLite که با DB\_ExecuteQuery اجرا شده رو دریافت کنید
-   [DB\_GetDatabaseConnectionCount](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetDatabaseConnectionCount): تعداد اتصالات باز پایگاه داده رو برای اهداف دیباگ دریافت کنید
-   [DB\_GetDatabaseResultSetCount](https://omp.itsneufox.com/fa/docs/scripting/functions/DB_GetDatabaseResultSetCount): تعداد نتایج باز پایگاه داده رو دریافت کنید
