-
Notifications
You must be signed in to change notification settings - Fork 396
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #810 from adib-yg/master
Modern SQLite functions docs
- Loading branch information
Showing
20 changed files
with
2,088 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
--- | ||
title: DB_ExecuteQuery | ||
description: The function is used to execute an SQL query on an opened SQLite database. | ||
keywords: | ||
- sqlite | ||
tags: ["sqlite"] | ||
--- | ||
|
||
## Description | ||
|
||
The function is used to execute an SQL query on an opened SQLite database. | ||
|
||
| Name | Description | | ||
|------------------|--------------------------------------------| | ||
| DB:db | The database handle to query. | | ||
| const query[] | The query to execute. | | ||
| OPEN_MP_TAGS:... | Indefinite number of arguments of any tag. | | ||
|
||
## Returns | ||
|
||
The query result index (starting at 1) if successful, otherwise 0. | ||
|
||
## Examples | ||
|
||
```c | ||
// entity_storage.inc | ||
|
||
EntityStorage_SpawnAll(DB:connectionHandle) | ||
{ | ||
// Select all entries in table "entities" | ||
new DBResult:db_result_set = DB_ExecuteQuery(connectionHandle, "SELECT * FROM `entities`"); | ||
|
||
// If database result set handle is valid | ||
if (db_result_set) | ||
{ | ||
// Do something... | ||
|
||
// Free the result set | ||
DB_FreeResultSet(db_result_set); | ||
} | ||
} | ||
``` | ||
```c | ||
// mode.pwn | ||
#include <entity_storage> | ||
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\"."); | ||
EntityStorage_SpawnAll(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; | ||
} | ||
``` | ||
|
||
## Notes | ||
|
||
:::warning | ||
|
||
Always free results by using [DB_FreeResultSet](DB_FreeResultSet)! | ||
|
||
::: | ||
|
||
## Related Functions | ||
|
||
- [DB_Open](DB_Open): Open a connection to an SQLite database | ||
- [DB_Close](DB_Close): Close the connection to an SQLite database | ||
- [DB_ExecuteQuery](DB_ExecuteQuery): Query an SQLite database | ||
- [DB_FreeResultSet](DB_FreeResultSet): Free result memory from a DB_ExecuteQuery | ||
- [DB_GetRowCount](DB_GetRowCount): Get the number of rows in a result | ||
- [DB_SelectNextRow](DB_SelectNextRow): Move to the next row | ||
- [DB_GetFieldCount](DB_GetFieldCount): Get the number of fields in a result | ||
- [DB_GetFieldName](DB_GetFieldName): Returns the name of a field at a particular index | ||
- [DB_GetFieldString](DB_GetFieldString): Get content of field with specified ID from current result row | ||
- [DB_GetFieldStringByName](DB_GetFieldStringByName): Get content of field with specified name from current result row | ||
- [DB_GetFieldInt](DB_GetFieldInt): Get content of field as an integer with specified ID from current result row | ||
- [DB_GetFieldIntByName](DB_GetFieldIntByName): Get content of field as an integer with specified name from current result row | ||
- [DB_GetFieldFloat](DB_GetFieldFloat): Get content of field as a float with specified ID from current result row | ||
- [DB_GetFieldFloatByName](DB_GetFieldFloatByName): Get content of field as a float with specified name from current result row | ||
- [DB_GetMemHandle](DB_GetMemHandle): Get memory handle for an SQLite database that was opened with db_open. | ||
- [DB_GetLegacyDBResult](DB_GetLegacyDBResult): Get memory handle for an SQLite query that was executed with DB_ExecuteQuery. | ||
- [DB_GetDatabaseConnectionCount](DB_GetDatabaseConnectionCount): The function gets the number of open database connections for debugging purposes. | ||
- [DB_GetDatabaseResultSetCount](DB_GetDatabaseResultSetCount): The function gets the number of open database results. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
--- | ||
title: DB_FreeResultSet | ||
description: Frees result memory allocated from DB_ExecuteQuery. | ||
keywords: | ||
- sqlite | ||
tags: ["sqlite"] | ||
--- | ||
|
||
## Description | ||
|
||
Frees result memory allocated from DB_ExecuteQuery. | ||
|
||
| Name | Description | | ||
|-------------------|------------------------------------------------------------------------| | ||
| DBResult:dbresult | The result set to free allocated by [DB_ExecuteQuery](DB_ExecuteQuery) | | ||
|
||
## Returns | ||
|
||
Returns 1 if result set handle is valid, otherwise 0. | ||
|
||
## Examples | ||
|
||
```c | ||
// entity_storage.inc | ||
|
||
EntityStorage_SpawnAll(DB:connectionHandle) | ||
{ | ||
// Select all entries in table "entities" | ||
new DBResult:db_result_set = DB_ExecuteQuery(connectionHandle, "SELECT * FROM `entities`"); | ||
|
||
// If database result set handle is valid | ||
if (db_result_set) | ||
{ | ||
// Do something... | ||
|
||
// Free the result set | ||
DB_FreeResultSet(db_result_set); | ||
} | ||
} | ||
``` | ||
```c | ||
// mode.pwn | ||
#include <entity_storage> | ||
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\"."); | ||
EntityStorage_SpawnAll(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; | ||
} | ||
``` | ||
|
||
## Related Functions | ||
|
||
- [DB_Open](DB_Open): Open a connection to an SQLite database | ||
- [DB_Close](DB_Close): Close the connection to an SQLite database | ||
- [DB_ExecuteQuery](DB_ExecuteQuery): Query an SQLite database | ||
- [DB_FreeResultSet](DB_FreeResultSet): Free result memory from a DB_ExecuteQuery | ||
- [DB_GetRowCount](DB_GetRowCount): Get the number of rows in a result | ||
- [DB_SelectNextRow](DB_SelectNextRow): Move to the next row | ||
- [DB_GetFieldCount](DB_GetFieldCount): Get the number of fields in a result | ||
- [DB_GetFieldName](DB_GetFieldName): Returns the name of a field at a particular index | ||
- [DB_GetFieldString](DB_GetFieldString): Get content of field with specified ID from current result row | ||
- [DB_GetFieldStringByName](DB_GetFieldStringByName): Get content of field with specified name from current result row | ||
- [DB_GetFieldInt](DB_GetFieldInt): Get content of field as an integer with specified ID from current result row | ||
- [DB_GetFieldIntByName](DB_GetFieldIntByName): Get content of field as an integer with specified name from current result row | ||
- [DB_GetFieldFloat](DB_GetFieldFloat): Get content of field as a float with specified ID from current result row | ||
- [DB_GetFieldFloatByName](DB_GetFieldFloatByName): Get content of field as a float with specified name from current result row | ||
- [DB_GetMemHandle](DB_GetMemHandle): Get memory handle for an SQLite database that was opened with db_open. | ||
- [DB_GetLegacyDBResult](DB_GetLegacyDBResult): Get memory handle for an SQLite query that was executed with DB_ExecuteQuery. | ||
- [DB_GetDatabaseConnectionCount](DB_GetDatabaseConnectionCount): The function gets the number of open database connections for debugging purposes. | ||
- [DB_GetDatabaseResultSetCount](DB_GetDatabaseResultSetCount): The function gets the number of open database results. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
--- | ||
title: DB_GetDatabaseConnectionCount | ||
description: Gets the number of open database connections for debugging purposes. | ||
keywords: | ||
- sqlite | ||
tags: ["sqlite"] | ||
--- | ||
|
||
## Description | ||
|
||
The function gets the number of open database connections for debugging purposes. | ||
|
||
The function has no parameters. | ||
|
||
## Related Functions | ||
|
||
- [DB_Open](DB_Open): Open a connection to an SQLite database | ||
- [DB_Close](DB_Close): Close the connection to an SQLite database | ||
- [DB_ExecuteQuery](DB_ExecuteQuery): Query an SQLite database | ||
- [DB_FreeResultSet](DB_FreeResultSet): Free result memory from a DB_ExecuteQuery | ||
- [DB_GetRowCount](DB_GetRowCount): Get the number of rows in a result | ||
- [DB_SelectNextRow](DB_SelectNextRow): Move to the next row | ||
- [DB_GetFieldCount](DB_GetFieldCount): Get the number of fields in a result | ||
- [DB_GetFieldName](DB_GetFieldName): Returns the name of a field at a particular index | ||
- [DB_GetFieldString](DB_GetFieldString): Get content of field with specified ID from current result row | ||
- [DB_GetFieldStringByName](DB_GetFieldStringByName): Get content of field with specified name from current result row | ||
- [DB_GetFieldInt](DB_GetFieldInt): Get content of field as an integer with specified ID from current result row | ||
- [DB_GetFieldIntByName](DB_GetFieldIntByName): Get content of field as an integer with specified name from current result row | ||
- [DB_GetFieldFloat](DB_GetFieldFloat): Get content of field as a float with specified ID from current result row | ||
- [DB_GetFieldFloatByName](DB_GetFieldFloatByName): Get content of field as a float with specified name from current result row | ||
- [DB_GetMemHandle](DB_GetMemHandle): Get memory handle for an SQLite database that was opened with db_open. | ||
- [DB_GetLegacyDBResult](DB_GetLegacyDBResult): Get memory handle for an SQLite query that was executed with DB_ExecuteQuery. | ||
- [DB_GetDatabaseConnectionCount](DB_GetDatabaseConnectionCount): The function gets the number of open database connections for debugging purposes. | ||
- [DB_GetDatabaseResultSetCount](DB_GetDatabaseResultSetCount): The function gets the number of open database results. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
--- | ||
title: DB_GetDatabaseResultSetCount | ||
description: Gets the number of open database results | ||
keywords: | ||
- sqlite | ||
tags: ["sqlite"] | ||
--- | ||
|
||
## Description | ||
|
||
The function gets the number of open database results. | ||
|
||
The function has no parameters. | ||
|
||
## Related Functions | ||
|
||
- [DB_Open](DB_Open): Open a connection to an SQLite database | ||
- [DB_Close](DB_Close): Close the connection to an SQLite database | ||
- [DB_ExecuteQuery](DB_ExecuteQuery): Query an SQLite database | ||
- [DB_FreeResultSet](DB_FreeResultSet): Free result memory from a DB_ExecuteQuery | ||
- [DB_GetRowCount](DB_GetRowCount): Get the number of rows in a result | ||
- [DB_SelectNextRow](DB_SelectNextRow): Move to the next row | ||
- [DB_GetFieldCount](DB_GetFieldCount): Get the number of fields in a result | ||
- [DB_GetFieldName](DB_GetFieldName): Returns the name of a field at a particular index | ||
- [DB_GetFieldString](DB_GetFieldString): Get content of field with specified ID from current result row | ||
- [DB_GetFieldStringByName](DB_GetFieldStringByName): Get content of field with specified name from current result row | ||
- [DB_GetFieldInt](DB_GetFieldInt): Get content of field as an integer with specified ID from current result row | ||
- [DB_GetFieldIntByName](DB_GetFieldIntByName): Get content of field as an integer with specified name from current result row | ||
- [DB_GetFieldFloat](DB_GetFieldFloat): Get content of field as a float with specified ID from current result row | ||
- [DB_GetFieldFloatByName](DB_GetFieldFloatByName): Get content of field as a float with specified name from current result row | ||
- [DB_GetMemHandle](DB_GetMemHandle): Get memory handle for an SQLite database that was opened with db_open. | ||
- [DB_GetLegacyDBResult](DB_GetLegacyDBResult): Get memory handle for an SQLite query that was executed with DB_ExecuteQuery. | ||
- [DB_GetDatabaseConnectionCount](DB_GetDatabaseConnectionCount): The function gets the number of open database connections for debugging purposes. | ||
- [DB_GetDatabaseResultSetCount](DB_GetDatabaseResultSetCount): The function gets the number of open database results. |
Oops, something went wrong.