标题:为什么这样没有更新成功啊?请高手解答。。。。
只看楼主
liruilianww
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2012-2-23
结帖率:66.67%
已结贴  问题点数:20 回复次数:9 
为什么这样没有更新成功啊?请高手解答。。。。
private DataSet dataset = new DataSet();
        private SqlDataAdapter dataadapter;

        private void Form2_Load(object sender, EventArgs e)
        {
            dataGridView1.RowHeadersVisible = false;
            string sql = string.Format("select id,姓名,地址,数学,语文,计算机,英文,体育 from 学生成绩表");
            string connstring = "Data Source=.;Initial Catalog=wang;Integrated Security=true";
            SqlConnection connection = new SqlConnection(connstring);
            dataadapter = new SqlDataAdapter(sql, connection);
            dataadapter.Fill(dataset);
            dataGridView1.DataSource = dataset.Tables[0];
        }
        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("确定要将修改保存到数据库吗?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question);
            if(result==DialogResult.OK)
            {
                SqlCommandBuilder builder = new SqlCommandBuilder(dataadapter);
                dataadapter.Update(dataset);
            }
        }
搜索更多相关主题的帖子: 计算机 void private 成绩表 false 
2012-02-29 11:04
liruilianww
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2012-2-23
得分:0 
我是窗体加载的时候dataGridView1显示数据集dataset,然后再在dataGridView1里面更改数据,然后在窗体上面加一个按键,在按键的click事件里面建立SQL 新建命令对数据库进行更新。请好心人帮忙查看为什么上面的代码不行?
2012-02-29 11:04
xydddaxia
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:33
帖 子:466
专家分:2307
注 册:2009-3-20
得分:10 
使用SqlDataAdapter更新的一般代码循序
1.查询数据到DataSet并绑定到控件
2.更改控件中的数据
3.提交更改
4.得到更改的数据所在行,修改内容
5.Update()提交更改

如果是要更新整个DataSet,建议使用 BindingManagerBase

站在春哥的肩膀上
2012-02-29 12:36
liruilianww
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2012-2-23
得分:0 
能详细到代码不,嘿嘿
2012-02-29 13:21
yimaoqian198
Rank: 4
等 级:业余侠客
帖 子:108
专家分:287
注 册:2010-5-10
得分:10 
是否启用dataGridView的编辑列
2012-02-29 16:08
xydddaxia
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:33
帖 子:466
专家分:2307
注 册:2009-3-20
得分:0 
程序代码:
private DataSet dataset = new DataSet();
        private SqlDataAdapter dataadapter;
        SqlCommandBuilder builder;

        private void Form2_Load(object sender, EventArgs e)
        {
            dataGridView1.RowHeadersVisible = false;
            string sql = string.Format("select id,姓名,地址,数学,语文,计算机,英文,体育 from 学生成绩表");
            string connstring = "Data Source=.;Initial Catalog=wang;Integrated Security=true";
            SqlConnection connection = new SqlConnection(connstring);
            dataadapter = new SqlDataAdapter(sql, connection);
            builder = new SqlCommandBuilder(dataadapter);
            dataadapter.Fill(dataset);
            dataGridView1.DataSource = dataset.Tables[0];
        }
        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("确定要将修改保存到数据库吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            if (result == DialogResult.OK)
            {
                DataTable dt = (System.Data.DataTable)this.dataGridView2.DataSource;
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (dt.Rows[i].RowState == DataRowState.Modified)
                    {
                        //第i行被修改过,更新对应dataset中的行
                        for (int j = 0; j < dt.Columns.Count; j++)
                        {
                            dataset.Tables[0].Rows[i][j] = dt.Rows[i][j].ToString();
                        }
                    }
                }
                //提交更新
                builder = new SqlCommandBuilder(dataadapter);
                dataadapter.Update(dataset);
            }
        }
//没有数据,没有测试过

站在春哥的肩膀上
2012-02-29 16:43
liruilianww
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2012-2-23
得分:0 
试过了,不行
2012-02-29 17:09
xydddaxia
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:33
帖 子:466
专家分:2307
注 册:2009-3-20
得分:0 
修改那里还是换成sql语句执行吧

站在春哥的肩膀上
2012-02-29 17:27
liruilianww
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2012-2-23
得分:0 
e
2012-02-29 18:56
佳L
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:19
帖 子:1404
专家分:3485
注 册:2011-12-11
得分:0 
回复 楼主 liruilianww
你调试了没有?我认为应该是你把连接字符串和查询语句的位子错了,应该是先连接字符串,再写查询语句。

Dreams  will   come  true  ,if   you    hold   on  !
2012-03-03 21:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-361845-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029798 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved