Modules/MTA-MySQL

From Multi Theft Auto: Wiki
Revision as of 10:01, 26 November 2011 by X86dev (talk | contribs) (Undo revision 28475 by John (talk))
Jump to navigation Jump to search

Module info
Name MTA MySQL
Version 0.5
Author Alberto Alonso (ryden)
Module website Here
Download link Here
License BSD
Written in C++
Operating system Cross-platform
Compatible with DP2.x, 1.0.x & 1.1

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

Uncompress the file mta_mysql.dll into your C:\Program files\MTA San Andreas\server\mods\deathmatch\modules\ directory and the file libmysql.dll into your C:\Program files\MTA San Andreas\server\ directory.

Then, add the following line in mtaserver.conf:

  <module src="mta_mysql.dll" />

GNU/Linux

Uncompress the file mta_mysql.so in the mods/deathmatch/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()