Class Private Private String Private String Private String Private String
Class Private Private String Private String Private String Private String
{
private MySqlConnection connection;
private string server;
private string database;
private string uid;
private string password;
//Constructor
public DBConnect()
{
Initialize();
}
//Initialize values
private void Initialize()
{
server = "localhost";
database = "connectcsharptomysql";
uid = "username";
password = "password";
string connectionString;
connectionString = "SERVER=" + server + ";" + "DATABASE="
+
database + ";" + "UID=" + uid + ";" + "PASSWORD=" +
password + ";";
connection = new MySqlConnection(connectionString);
}
//open connection to database
private bool OpenConnection()
{
}
//Close connection
private bool CloseConnection()
{
}
//Insert statement
public void Insert()
{
}
//Update statement
public void Update()
{
}
//Delete statement
public void Delete()
{
}
//Select statement
public List <string> [] Select()
{
}
//Count statement
public int Count()
{
}
//Backup
public void Backup()
{
}
//Restore
public void Restore()
{
}
}
follows:
//0: Cannot connect to server.
//1045: Invalid user name and/or password.
switch (ex.Number)
{
case 0:
MessageBox.Show("Cannot connect to server. Contact
administrator");
break;
case 1045:
MessageBox.Show("Invalid username/password, please try
again");
break;
}
return false;
}
}
//Close connection
private bool CloseConnection()
{
try
{
connection.Close();
return true;
}
catch (MySqlException ex)
{
MessageBox.Show(ex.Message);
return false;
}
}
1
2
3
4
5
Copy Code
//Insert statement
public void Insert()
{
string query = "INSERT INTO tableinfo (name, age) VALUES('John
Smith', '33')";
//open connection
if (this.OpenConnection() == true)
{
//create command and assign the query and connection from
the constructor
MySqlCommand cmd = new MySqlCommand(query,
connection);
//Execute command
cmd.ExecuteNonQuery();
//close connection
this.CloseConnection();
}
}
//Update statement
public void Update()
{
string query = "UPDATE tableinfo SET name='Joe', age='22'
WHERE name='John Smith'";
//Open connection
if (this.OpenConnection() == true)
{
//create mysql command
MySqlCommand cmd = new MySqlCommand();
//Assign the query using CommandText
cmd.CommandText = query;
//Assign the connection using Connection
cmd.Connection = connection;
//Execute query
cmd.ExecuteNonQuery();
//close connection
this.CloseConnection();
}
}
//Delete statement
public void Delete()
{
string query = "DELETE FROM tableinfo WHERE name='John
Smith'";
if (this.OpenConnection() == true)
{
MySqlCommand cmd = new MySqlCommand(query,
connection);
cmd.ExecuteNonQuery();
this.CloseConnection();
}
}
1
2
3
4
5
6
7
8
//Select statement
public List< string >[] Select()
{
string query = "SELECT * FROM tableinfo";
//Create a list to store the result
List< string >[] list = new List< string >[3];
list[0] = new List< string >();
Copy Code
1
2
3
Sometimes, a command will always return only one value, like for
example if we want to count the number of records, we have been
using Select Count(*) from tableinfo;, in this case, we will
have to use the method ExecuteScalar that will return one
value.
The process to successfully run and ExecuteScalar is as
follows:
Open connection to the database.
Create a MySQL command.
Assign a connection and a query to the command. This can be
done using the constructor, or using the Connection and the
CommandText methods in the MySqlCommand class.
Execute the command.
5
6
//Count statement
public int Count()
{
string query = "SELECT Count(*) FROM tableinfo";
int Count = -1;
//Open Connection
if (this.OpenConnection() == true)
{
//Create Mysql Command
MySqlCommand cmd = new MySqlCommand(query,
connection);
//ExecuteScalar will return one value
Count = int.Parse(cmd.ExecuteScalar()+"");
//close Connection
this.CloseConnection();
return Count;
}
else
{
return Count;
}
}