1.命名空间的引用
C#读取数据库需要引用命名空间:
如果出现无法引用的错误,解决办法看网上说法不一。很多表示缺少MYSQL.DATA.DLL,但是我去网上找了一下,发现下载不方便,然后用下列方法进行了解决。
首先选中视图——>解决方案资源管理器——>引用(右键)——>添加引用
点击扩展,滚动选择MYSQL.DATA(双击)
点击确定完成
2.数据库的链接
用XAMPP创建数据库,进行连接。
namespace DBtest
{
public partial class Form1 : Form
{
string strcon = "server=localhost;port=3306;Database=controldb;User Id=root;Password=;charset='utf8';pooling=true;SslMode = none;";
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//string strcon = "server=localhost;port=3306;Database='control_db';Data Source='localhost';User Id='root';Password='root';charset='utf8';pooling=true;SslMode=none";
MySqlConnection mySqlConnection;
using (mySqlConnection = new MySqlConnection(strcon))
{
mySqlConnection.Open();
MessageBox.Show(mySqlConnection.State.ToString());
}
MessageBox.Show(mySqlConnection.State.ToString());
}
private void button2_Click(object sender, EventArgs e)
{
MySqlConnection mysqlcon = new MySqlConnection(strcon);
try
{
int option_id = 1;
int line = 2;
int arg = 3;
string engineer_id = "sa";
string time = "1999/23/23";
MySqlCommand command = new MySqlCommand();
command.CommandText = "INSERT INTO control_dt(option_id,line,arg,time,engineer_id) VALUES('" + option_id + "','" + line + "','" + arg + "','" + time + "','" + engineer_id + "')";
command.CommandType = CommandType.Text;
command.Connection = mysqlcon;
mysqlcon.Open();
if (command.ExecuteNonQuery() == 1)
{
MessageBox.Show("插入成功!", "消息", MessageBoxButtons.OK);
//button2_Click(null, null);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
mysqlcon.Close();
}
}
}
}