Modules/MTA-MySQL: Difference between revisions
No edit summary |
Tag: Rollback |
||
Line 1: | Line 1: | ||
<pageclass class="#AA7592" subcaption="MTA-MySQL Module"></pageclass> | <pageclass class="#AA7592" subcaption="MTA-MySQL Module"></pageclass> | ||
<div style="font-size: | <div style="font-size: 10em; line-height: 1em;">{{Warning|This module is too old, please use [[dbConnect]] instead.}}</div> | ||
{{Module_Info| | {{Module_Info| | ||
name = MTA MySQL | | name = MTA MySQL | |
Revision as of 11:32, 27 April 2020
Module info | |
Name | MTA MySQL |
Version | 0.5 |
Author | Alberto Alonso (ryden) |
Module website | Here |
Download link | Windows 32 bit Windows 64 bit |
License | BSD |
Written in | C++ |
Operating system | Cross-platform |
Compatible with | DP2.x & 1.X |
MTA MySQL is an alternative to the default ml_mysql module provided by the MTA team. It is available for Windows and GNU/Linux and provides the source code.
Note: From version 0.4 it supports both DP2.3 and 1.0 servers.
Installation
Windows
32 bit: Copy 32 bit mta_mysql.dll into the MTA San Andreas\server\mods\deathmatch\modules\ directory.
(You might also need to install 32 bit VS2013 Runtime Redist)
64 bit: Copy 64 bit mta_mysql.dll into the MTA San Andreas\server\x64\modules\ directory.
(You might also need to install 64 bit VS2013 Runtime Redist)
Then, add the following line in mtaserver.conf:
<module src="mta_mysql.dll" />
GNU/Linux
32 bit: Copy 32 bit mta_mysql.so into the mods/deathmatch/modules/ directory.
64 bit: Copy 64 bit mta_mysql.so into the x64/modules/ directory.
Then, add the following line in mtaserver.conf:
<module src="mta_mysql.so" />
To fix MODULE: Unable to find modules/mta_mysql.so (libmysqlclient.so.16: cannot open shared object file: No such file or directory)! copy libmysqlclient.so.16 into /usr/lib (32 bit, 64 bit)
If you experience an error on Unix systems: Try to add port and socket parameters to your mysql_connect.
Handler functions
- mysql_connect
- mysql_close
- mysql_errno
- mysql_error
- mysql_ping
- mysql_select_db
- mysql_escape_string
- mysql_affected_rows
- mysql_change_user
- mysql_get_character_set_info
- mysql_get_client_info
- mysql_get_client_version
- mysql_get_host_info
- mysql_get_proto_info
- mysql_get_server_info
- mysql_get_server_version
- mysql_hex_string
- mysql_info
- mysql_insert_id
- mysql_query
- mysql_unbuffered_query
- mysql_set_character_set
- mysql_stat
- mysql_warning_count
Result managing functions
- mysql_data_seek
- mysql_fetch_field
- mysql_fields
- mysql_fetch_lengths
- mysql_fetch_row
- mysql_rows
- mysql_fetch_assoc
- mysql_rows_assoc
- mysql_field_length
- mysql_field_name
- mysql_field_seek
- mysql_field_tell
- mysql_num_fields
- mysql_num_rows
- mysql_result
- mysql_free_result
- mysql_null
Version 0.5 calling method
From version 0.5 onwards you can call all this module functions, except mysql_connect and mysql_null, as if they are methods of an object.
For example, having a valid MySQL handler, you can do handler:query ( "SELECT * FROM table" ) instead of mysql_query ( handler, "SELECT * FROM table" ).
Function aliases
A function alias is a second name for a function, which makes calling any of the original name or the alias have the same result. The new aliases introduced in version 0.5 are:
- result:num_rows() is the same as result:numrows()
- result:num_fields() is the same as result:numfields()
- result:free_result() is the same as result:free()