【发布时间】:2016-03-14 09:37:38
【问题描述】:
我使用 MYSQL Server 作为我的项目后端。我有一个从数据库中填充数据的 DataGridView。当我在 DataGridView 单元格中进行更改并单击 saveButton 时,数据需要在 DataGridView 和数据库表中更改。
这里是我的编码:
using MySql.Data.MySqlClient;
using System;
using System.Data;
using System.IO;
using System.Windows.Forms;
namespace datagridview
{
public partial class Form1 : Form
{
DataTable datatab;
MySqlDataAdapter mydtadp;
MySqlCommandBuilder cmbl;
String MyConnection = "SERVER=*****;" +
"DATABASE=****;" +
"UID=root;" +
"PASSWORD=pws";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
MySqlConnection MyConn = new MySqlConnection(MyConnection);
MyConn.Open();
MySqlCommand comand = new MySqlCommand("select * from aster_scripts;", MyConn);
datatab = new DataTable();
mydtadp = new MySqlDataAdapter(comand);
mydtadp.Fill(datatab);
dataGridView1.DataSource = datatab;
MyConn.Close();
}
private void BtnSave_Click(object sender, EventArgs e)
{
DataSet ds = new DataSet();
cmbl = new MySqlCommandBuilder(mydtadp);
mydtadp.Update(datatab);
MessageBox.Show("SAVED");
}
}
}
我在 mydtadp.Update(datatab); 如何做到这一点?
【问题讨论】:
-
不要使用 select * from aster_scripts,使用 Select Column names from aster_scripts。当您使用 * 时,它将获取模式,并且当您获取大量记录时,此查询将导致性能问题。
标签: c# mysql datagridview