2. 将新增的行数据添加到DataTable中;
3. 将DataTable中的数据批量更新到MySQL中;
4. 将DataTable中的数据更新到DataGridView中;
下面是示例代码:
// 获取DataGridView中的数据
DataTable dt = (DataTable)dataGridView1.DataSource
// 添加新行
DataRow dr = dt.NewRow()
dr["Name"] = "John"
dr["Age"] = 25
dt.Rows.Add(dr)
// 更新MySQL
string connStr = "Server=xxxDatabase=xxxUid=xxxPwd=xxx"
using (MySqlConnection conn = new MySqlConnection(connStr))
{
conn.Open()
using (MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM tbl_user", conn))
{
MySqlCommandBuilder cb = new MySqlCommandBuilder(da)
da.Update(dt)
}
conn.Close()
}
// 更新DataGridView
dataGridView1.DataSource = dt
你看看my.ini的sql-mode节有没有STRICT_TRANS_TABLES,如果没有这个值就可以插入其实这个是mysql在帮你把null转换成'',如果有这个值并且还可以插入那就是mysql的bug,mysql可以做通过这些mode开关做很多不严格但是有趣的 *** 作,已知的有group 分组中,select中可以有非group或者聚合函数的字段(ONLY_FULL_GROUP_BY),还有就是你的这个insert。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)