C# 的DataGridView 操作数据库 插入,更新,删除
2017-03-04 13:08
471 查看
数据库的主键为ID,如果不设,C#访问会有问题,问题描述:对于不返回任何键列信息的 SelectCommand,不支持 DeleteCommand 的动态 SQL 生成。
C#代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsFormsApplication2
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
BindDataSource();
}
string url = null;
string command = null;
SqlConnection connect = null;
SqlDataAdapter adapter = null;
DataSet tables = null;
private void BindDataSource()
{
url = "server=.;database='STU';uid='sa';pwd='123'";
connect = new SqlConnection(url);
connect.Open();
command = "select * from stu1";
adapter = new SqlDataAdapter(command,connect);
tables = new DataSet();
adapter.Fill(tables,"stu1");
dataGridView1.DataSource = tables;
dataGridView1.DataMember = "stu1";
connect.Close();
}
private void insert(string id,string name)
{
DataRow row = tables.Tables[0].NewRow();
row["ID"] = id;
row["Name"] = name;
tables.Tables[0].Rows.Add(row);
upadte();
}
private void upadte()
{
SqlCommandBuilder sql_command = new SqlCommandBuilder(adapter);
adapter.Update(tables.Tables[0]);
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
if ((this.textBox1.Text !="") && (this.textBox2.Text != ""))
{
insert(this.textBox1.Text, this.textBox2.Text);
}
else
MessageBox.Show("请完整信息");
}
private void button2_Click(object sender, EventArgs e)
{
/* DataTable dtShow = new DataTable();
// dtShow = (DataTable)this.dataGridView1.DataSource;
//使用for循环遍历行
for (int i = 0; i < dtShow.Rows.Count; i++)
{
//使用ImportRow方法复制dtShow中的值
//dtUpdate.ImportRow(dtShow.Rows[i]);
tables.Tables[0].ImportRow(dtShow.Rows[i]);
}
*/
// SqlCommandBuilder sql_command = new SqlCommandBuilder(adapter);
// adapter.Update(tables.Tables[0]);
upadte();
}
private void button3_Click(object sen
7d71
der, EventArgs e)
{
dataGridView1.Rows.RemoveAt(dataGridView1.CurrentRow.Index);
upadte();
}
}
}
C#代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsFormsApplication2
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
BindDataSource();
}
string url = null;
string command = null;
SqlConnection connect = null;
SqlDataAdapter adapter = null;
DataSet tables = null;
private void BindDataSource()
{
url = "server=.;database='STU';uid='sa';pwd='123'";
connect = new SqlConnection(url);
connect.Open();
command = "select * from stu1";
adapter = new SqlDataAdapter(command,connect);
tables = new DataSet();
adapter.Fill(tables,"stu1");
dataGridView1.DataSource = tables;
dataGridView1.DataMember = "stu1";
connect.Close();
}
private void insert(string id,string name)
{
DataRow row = tables.Tables[0].NewRow();
row["ID"] = id;
row["Name"] = name;
tables.Tables[0].Rows.Add(row);
upadte();
}
private void upadte()
{
SqlCommandBuilder sql_command = new SqlCommandBuilder(adapter);
adapter.Update(tables.Tables[0]);
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
if ((this.textBox1.Text !="") && (this.textBox2.Text != ""))
{
insert(this.textBox1.Text, this.textBox2.Text);
}
else
MessageBox.Show("请完整信息");
}
private void button2_Click(object sender, EventArgs e)
{
/* DataTable dtShow = new DataTable();
// dtShow = (DataTable)this.dataGridView1.DataSource;
//使用for循环遍历行
for (int i = 0; i < dtShow.Rows.Count; i++)
{
//使用ImportRow方法复制dtShow中的值
//dtUpdate.ImportRow(dtShow.Rows[i]);
tables.Tables[0].ImportRow(dtShow.Rows[i]);
}
*/
// SqlCommandBuilder sql_command = new SqlCommandBuilder(adapter);
// adapter.Update(tables.Tables[0]);
upadte();
}
private void button3_Click(object sen
7d71
der, EventArgs e)
{
dataGridView1.Rows.RemoveAt(dataGridView1.CurrentRow.Index);
upadte();
}
}
}
相关文章推荐
- FormView 显示、更新、插入、删除数据库操作[ASP.NET源代码](一)
- FormView 显示、更新、插入、删除数据库操作[ASP.NET源代码](三)
- shell脚本操作mysql数据库—创建数据库,在该数据库中创建表(插入,查询,更新,删除操作也可以做)
- DataTable 数据更新、删除、插入 数据库 操作
- FormView 显示、更新、插入、删除数据库操作[ASP.NET源代码](二)
- MySQL基本操作:数据库的创建、查询、更新、插入、删除表格
- ASP入门(二十三)- 数据库插入、更新和删除操作
- C#serialport收到数据实时插入数据库 datagridview更新一行 提高效率
- c#.net数据库连接 查询,删除 ,插入 ,更新
- Android Sqlite数据库执行插入查询更新删除的操作对比
- Android Sqlite数据库执行插入查询更新删除的操作对比
- 数据库插入、更新、删除操作
- FormView 显示、更新、插入、删除数据库操作[ASP.NET源代码](三)
- 黄聪:destoon常用数据库操作(插入、更新、删除、获取一行信息)
- ThinkPHP 数据库操作,插入,更新,删除,查询
- python对MySQL进行数据的插入、更新和删除之后需要commit,数据库才会真的有数据操作。(待日后更新)
- jdbc操作数据库插入、更新、删除、查找
- C#.net删除dataGridView中选中行并同时更新数据库
- C# 向数据库批量更新数据(插入、更新、删除)
- asp vb 插入,更新,删除数据库操作。