2 kawun kawun 于 2016.09.07 16:10 提问

C#新手提问 dataAdapter 如何通过datagridview修改数据源

点击查询按钮,通过dataAdapter 从数据库里取数据放在datagridview里
再在datagridview里添加、删除、修改,然后点击 更改 按钮修改数据库里的数据。
请问如何实现。我写了一点基础代码,但是不成功。
感激不尽,代码如下:
string rateSql = string.Format(@"select r_time_int,r_time_unit,r_rate from rate where r_p_id = {0}", productId);
OleDbCommand rateSqlCmd = new OleDbCommand(rateSql, DBHelper.conn);
OleDbDataAdapter rateSqlAdp = new OleDbDataAdapter(rateSqlCmd);
ds = new DataSet();
rateSqlAdp.Fill(ds);
DataTable dt = ds.Tables[0];
OleDbCommandBuilder cmdb = new OleDbCommandBuilder(rateSqlAdp);
rateSqlAdp.Update(ds);
dataGridView1.DataSource = dt;

2个回答

qq_23898511
qq_23898511   2016.09.09 11:47
已采纳

“ 如果是两个按钮,如何判断我是删除还是修改操作”--------------------如果你有两个按钮了,还需要判断是删除还是修改吗? 你这个意思表达的不是特别清楚。 我就这样给你说一下如何去删除和修改表格里面的数据。 首先你最好有一个表格里面有一个checkbox去选择你需要删除或则修改的数据。如果你是点击删除,那么直接获取你选中的那一行数据的ID(主键唯一),在数据库中通过这条ID去删除掉就可以。 如果是修改,你最好在打开一个界面,然后把选中的数据填充到界面中,在去修改你这个界面中想要修改的数据,并保存到数据库。这些是最简单的! 大致思路就是这样。写代码最重要的就是思路,不过你需要一些基础的代码知识来支持你,可以完成你的思路中的想法,这些想法最终就会变成你敲的代码。加油!

kawun
kawun 谢谢,我知道了。刚接触c#,不了解都什么功能
一年多之前 回复
qq_23898511
qq_23898511   2016.09.07 17:56

点击查询按钮,通过dataAdapter 从数据库里取数据放在datagridview里
再在datagridview里添加、删除、修改,然后点击 更改 按钮修改数据库里的数据。
-------------------------------------------------
如果你想在datagridview里面通过点击修改按钮修改数据库里的数据。那么你至少需要三步:
1、获取datagridview里面你修改的一条或多条数据保存;
2、根据传递的参数修改表里面的数据;
例如:
public int UpdateTable_A(参数)
{
string strConn = "Data Source=数据库名;User ID=数据库登陆名;Password=数据库登录密码;"; //定义数据库连接字符串
OracleConnection con = new OracleConnection(strConn);
string sqlstr = " update table_a set ";
if(参数.属性!="")
{
sqlstr += " table_a.列名="+参数.属性;
}
sqlstr += " where table_a.ID="+参数.属性;
OracleCommand cmd = new OracleCommand(sqlstr, con);
int result = cmd.ExecuteNonQuery(); //执行操作
return result;//0成功;1失败
}
3、判断成功和失败;

qq_23898511
qq_23898511 回复kawun: "通过一个按钮进行填充和修改",你说你是新手,那么建议你不要这样去操作。不过大致可以给你说一下。“一个按钮进行填充和修改”,你这里的填充我就理解为查询数据吧,你想要你个按钮执行两种操作,那么就需要判断这两种个操作的区别在哪里。首先查询是把数据放到表格里显示,而修改需要有一条修改的数据,那么区别就出来。如果表格里没有数据,并且也没有选择的修改数据,那么这个按钮的功能就是查询,否则就是修改。-----ps:一个按钮最好不要有两种不同的功能
一年多之前 回复
kawun
kawun 那我要是通过一个按钮进行填充和修改,我上面的代码如何修改呢? 如果是两个按钮,如何判断我是删除还是修改操作?如何判断我修改的是哪个属性?我是新手,大致说下就行,谢谢了
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!