Modules/MTA-MySQL

From Multi Theft Auto: Wiki

[[|link=]] Warning: This module is too old, please use dbConnect instead.
Module info
Name MTA MySQL
Version 0.5
Author Alberto Alonso (ryden)
Module website Here
Download link Windows 32 bit
Windows 64 bit

Linux 32 bit
Linux 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.15: cannot open shared object file: No such file or directory)! you have to install libmysqlclient15. You can get it here: http://automation.binarysage.net/?p=1311

If you experience an error on Unix systems: Try to add port and socket parameters to your mysql_connect.

Handler functions

Result managing functions

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()