目录
实验内容:
1、请设计一个项目连接到自己的MySQL数据库,数据库包含至少三张表;
2、使用dataGridView控件显示表中的数据;
3、实现基本crud操作;
实验步骤:
1.1.拖入控件到winform
1.2在这里我单独在控件的列里输入了我需要加载数据的表头
点击添加列,然后添加自己要添加的内容,在headertext栏中输入即可。
2.代码部分
1.数据库链接与sql执行,并将数据插入dataGridView1
public void ConnectView()
{
string constring = "data source=localhost;database=bi;" +
"user id=root;password=123456;pooling=true;charset=utf8;";
MySqlConnection conn = new MySqlConnection(constring); //新建连接
try
{
conn.Open();
MessageBox.Show("已经建立连接"); //连接成功则显示对话框
string sql = "select * from course"; //sql语言
MySqlCommand cmd = new MySqlCommand(sql, conn);//执行sql语句返回数据
MySqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())//推进到下一条数据
{
int index = this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[index].Cells[0].Value = reader.GetString("c_id");
this.dataGridView1.Rows[index].Cells[1].Value = reader.GetString("c_name");
this.dataGridView1.Rows[index].Cells[2].Value = reader.GetString("t_id");
}
}
catch (MySqlException ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
}
}
2.格式化dataGridView大小
//格式化dataGridView大小
public void Adapt()
{
int width = 0;
for (int i = 0; i < this.dataGridView1.Columns.Count; i++)
{
this.dataGridView1.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells);
width += this.dataGridView1.Columns[i].Width;
}
if (width > this.dataGridView1.Size.Width)
{
this.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;
}
else
{
this.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
}
}
3.button调用
private void button1_Click(object sender, EventArgs e)
{
Adapt();
ConnectView();
}
结果: