How To Open a MySQL connection and use it
Example 1. Create a new MySQL connection
Notes
  - 
You should have already installed the gb.mysql and all MySQL related packages.
 
- 
This is not an example about SQL (MySQL or otherwise) statements.
 
- 
The privileges to a database are granted by the MySQL administrator to the MySQL user and are not controlled by Gambas.
 
- 
The gb.db component has to be selected for use in your project before your program can access the DataBase Engine.
 
Recommendations
  - 
The database connection of your program should be placed in a Module, so it can be called from anywhere.
 
- 
The gambas-database-manager is great, However if you want to create a good database in MySQL you should use the MySQL console or MySQL Workbench, these will help prevent potential problems dealing with Data Types.
Steps
1.Create a new Module for you program, this example uses 
MODMain as the Module name.
2.Create a new variable for the connection:
       PUBLIC $Con AS NEW Connection
3.Now create a Procedure to make the connection:
       PUBLIC PROCEDURE Connect()
                $Con.Close()              ' Close the connection
                $Con.Type = "[..../def/mysql]"       ' Type of connection
                $Con.Host = "localhost"   ' Name of the server
                $Con.Login = "root"       ' User's name for the connection
                $Con.Port = "3306"        ' Port to use in the connection, usually 3306
                $Con.Name = "Sophia"      ' Name of the database we want to use
                $Con.Password = "root123" ' User's password
                $Con.Open()               ' Open the connection
       END
4.Now create a Procedure to start the program:
       PUBLIC SUB Main()
                Connect() ' Run the Procedure to connect
                FRMStart.Visible = TRUE ' The main form of your program
       END
5.If you want to execute a query to return everything database only write:
       MODMain.$Con.Exec(“SELECT * FROM mysql.user”)
6.You can create queries with information supplied by the user, just do something like this:
       PUBLIC PROCEDURE SearchName()
                DIM $Query AS String
                $Query = “SELECT * FROM Friends WHERE Name = '” & TBXName.Text & “'”
                MODMain.$Con.Exec($Query)
       END
Example 2. Dealing with results (SELECTS).
Notes:
1.You should have read the Notes and Recommendations from Example 1.
2.Gambas has a special Data Type to deal with query's results, it is called 
Result.
Steps:
1.Let's suppose the 
Table Friends has the following fields:
       FirstName
       SecondName
       Address
       Phone
2.Store the query's result into a variable:
       PUBLIC PROCEDURE SearchName()
                DIM $Query AS String
                DIM $Result AS Result
                DIM $Phone AS String
                $Query = “SELECT * FROM Friends WHERE Name = '” & TBXName.Text & “'”
                $Result = MODMain.$Con.Exec($Query)
                $Phone = $Result!Phone
                Message.Info($Phone)
       END
3.If you want to create a printable report, you can put the query's result into a 
File using the 
html format, so you can open it using a Web Browser.
Example 3. Transactions.
Notes:
1.You should have read the Notes and Recommendations from Examples 1 and 2.
Steps:
1.Let's suppose we want to add a new record into the 
Table Friends:
       DIM $Result AS Result
       MODMain.$Con.Begin()
                $Result = MODMain.$Con.Create(“Friends”)
                $Result!FirstName = TBXName.Text
                $Result!SecondName = TBXName2.Text
                $Result!Address = TBXAddress.Text
                $Result!Phone = TBXPhone.Text
                $Result.Update]()
       MODMain.$Con.Commit()
2.You should be careful with the Data Types, of course you can't save a 
String into a 
Integer.