Modules/MySQL/MysqlOpen: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
==Description==
{{ModuleFunction|MySQL}}
This function opens a MySQL connection to a specific database on a database server. As soon as a connection is made (or timed out), the callback_function you passed as parameter is called and you can (hopefully) read/write to the database by using the [[mysqlQuery]] function.


This function is provided by the '''ml_mysql''' module.
This function opens a MySQL connection to a specific database on a database server. As soon as a connection is made (or timed out), the callback_function you passed as parameter is called and you can read/write to the database by using the [[mysqlQuery]] function.


==Syntax==
==Syntax==
bool mysqlOpen ( string callback_function, string host, string user, string password, string database_name, int port )
<syntaxhighlight lang="lua">bool mysqlOpen ( mysql mysqlobj, string callback_function, string host, string user, string password, string database_name, int port )</syntaxhighlight>


===Required Arguments===
===Required Arguments===
*'''callback_function''' : The function that is called if the operation is done (please see below)
*'''mysqlobj''' : mysql object (requires an established connection)
*'''callback_function''' : The function that is called if the operation is done (see below)
*'''host''' : The database server hostname or IP address to use
*'''host''' : The database server hostname or IP address to use
*'''user''' : The database username to use
*'''user''' : The database username to use
Line 18: Line 18:
===Callback Arguments===
===Callback Arguments===
Your callback function has to accept the following arguments:
Your callback function has to accept the following arguments:
*'''[[mysql]]''' mysql : Returns the mysql object
*'''bool''' result : Returns false on error, true on success
*'''bool''' result : Returns false on error, true on success


Line 26: Line 25:


==Example==
==Example==
function onMySQLOpen ( mysql, result )
<syntaxhighlight lang="lua">
  if ( result )
function onMySQLOpen ( result )
    -- connection succeeded. switch some global boolean or do a query
if ( result ) then
  else
outputServerLog ( "MySQL connection established." )
    -- panic.
else
  end
outputServerLog ( "MySQL connection failed." )
end
end
<...>
end
[[mysqlOpen]] ( "onMySQLOpen", "localhost", "user123", "mypassword", "testdatabase", 3306 );
 
function mysqltest ()
db = mysqlCreate ()
mysqlOpen ( db, "onMySQLOpen", "localhost", "bastage", "bastage_pw", "test", 3306 )
end
</syntaxhighlight>

Latest revision as of 20:45, 29 September 2009


Package-x-generic.png This function is provided by the external module MySQL. You must install this module to use this function.


This function opens a MySQL connection to a specific database on a database server. As soon as a connection is made (or timed out), the callback_function you passed as parameter is called and you can read/write to the database by using the mysqlQuery function.

Syntax

bool mysqlOpen ( mysql mysqlobj, string callback_function, string host, string user, string password, string database_name, int port )

Required Arguments

  • mysqlobj : mysql object (requires an established connection)
  • callback_function : The function that is called if the operation is done (see below)
  • host : The database server hostname or IP address to use
  • user : The database username to use
  • password : The database password to use
  • database_name : The database name to use
  • port : The database server port (MySQL default port is 3306)

Callback Arguments

Your callback function has to accept the following arguments:

  • bool result : Returns false on error, true on success

Optional Arguments

None

Example

function onMySQLOpen ( result )
	if ( result ) then
		outputServerLog ( "MySQL connection established." )
	else
		outputServerLog ( "MySQL connection failed." )
	end
end

function mysqltest ()
	db = mysqlCreate ()
	mysqlOpen ( db, "onMySQLOpen", "localhost", "bastage", "bastage_pw", "test", 3306 )
end