C# MySQL Connections
-
VisualStudio makes it easy to create a webform application with buttons for DB connection & queries
Create New Project DatabaseFormApp

Add Reference for MySql.Data package




Form1.cs Form Design
Add Button
-
Name: btnConnect
-
Text: Connect!
Add Button
-
Name: btnQuery
-
Text: RunQuery
Add Label
-
Name: txtResult
-
Text: ….

Form1.cs Code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace DatabaseFormApp
{
public partial class Form1 : Form
{
MySqlConnection cnx = new MySqlConnection("server=192.168.0.80; port=3306; userid=outlaw1; password=outlaw1; database=outlaw; Encrypt=false;");
MySqlCommand cmd = new MySqlCommand();
String query = "SELECT * FROM node";
MySqlDataReader reader;
// for instert/delete/update ie.. non-'select' queries
//MySqlDataReader queryResult = cmd.ExecuteQuery();
public Form1()
{
InitializeComponent();
}
private void label1_Click(object sender, EventArgs e)
{
}
private void btnConnect_Click(object sender, EventArgs e)
{
//String query = string.Format("SELECT * FROM node");
try
{
cnx.Open();
//MessageBox.Show("connected...");
lblResult.Text = "Connected....";
cnx.Close();
}
catch
{
//MessageBox.Show("NOT connected...");
lblResult.Text = "NOT Connected....";
}
}
private void btnQuery_Click(object sender, EventArgs e)
{
try
{
cnx.Open();
cmd = new MySqlCommand(query, cnx);
reader = cmd.ExecuteReader();
StringBuilder sb = new StringBuilder();
while (reader.Read())
{
string id = (string)reader["nid"].ToString();
string nid = reader["nid"].ToString();
string type = reader["type"].ToString();
string uuid = reader["uuid"].ToString();
string result = "string = " + nid + "--" + type + "--" + uuid;
sb.Append(result + "\n");
}
lblResult.Text = sb.ToString();
cnx.Close();
}
catch
{
lblResult.Text = "Can't Execute Query";
//Console.WriteLine("Can't Execute Query...");
}
}
}
}


DBForm.Designer.cs
namespace DatabaseFormApp
{
partial class DBForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.btnConnect = new System.Windows.Forms.Button();
this.lblResult = new System.Windows.Forms.Label();
this.btnQuery = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// btnConnect
//
this.btnConnect.Location = new System.Drawing.Point(12, 12);
this.btnConnect.Name = "btnConnect";
this.btnConnect.Size = new System.Drawing.Size(75, 23);
this.btnConnect.TabIndex = 0;
this.btnConnect.Text = "Connect!";
this.btnConnect.UseVisualStyleBackColor = true;
this.btnConnect.Click += new System.EventHandler(this.btnConnect_Click);
//
// lblResult
//
this.lblResult.AutoSize = true;
this.lblResult.Location = new System.Drawing.Point(93, 12);
this.lblResult.Name = "lblResult";
this.lblResult.Size = new System.Drawing.Size(19, 13);
this.lblResult.TabIndex = 1;
this.lblResult.Text = "....";
this.lblResult.Click += new System.EventHandler(this.label1_Click);
//
// btnQuery
//
this.btnQuery.Location = new System.Drawing.Point(12, 42);
this.btnQuery.Name = "btnQuery";
this.btnQuery.Size = new System.Drawing.Size(75, 23);
this.btnQuery.TabIndex = 2;
this.btnQuery.Text = "RunQuery";
this.btnQuery.UseVisualStyleBackColor = true;
this.btnQuery.Click += new System.EventHandler(this.btnQuery_Click);
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(483, 312);
this.Controls.Add(this.btnQuery);
this.Controls.Add(this.lblResult);
this.Controls.Add(this.btnConnect);
this.Name = "Form1";
this.Text = "DatabaseFormApp";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button btnConnect;
private System.Windows.Forms.Label lblResult;
private System.Windows.Forms.Button btnQuery;
}
}
- Log in to post comments
