winform datagridview控制数据库的问题,大牛来!!!!还可以输入39个字符,标题一定要长!!!!好了,暂时先这么长吧。。。。

华丽丽的小低调 2013-05-16 11:11:32
winform 里面有一个DataGridView
form加载时DataGridView绑定了一个数据库表。key:id(自动增长),副表关联字段cusid.
form加载时我不想DataGridView显示cusid列,所以sql查询时就没写这个字段。


问题来了:
我想新增一条记录时,cusid这个字段要赋值,用dataadapter.update()方式该怎么实现啊?
就是实现DataGridView的增删改。


当然如果form load时要把cusid加上去也可以,能把它隐藏也可以。求大牛帮忙
...全文
152 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
问题解决了。。。哎。。真F了,居然没人会。。。幸好哥哥犀利。。哈哈
  • 打赏
  • 举报
回复
有没有大神回复我一下啊。。
  • 打赏
  • 举报
回复
引用 15 楼 u010054969 的回复:
把cusid的 Visible=false.就隐藏了
datagridview是动态赋值的啊,怎么设置?求代码?
  • 打赏
  • 举报
回复
引用 13 楼 min20062020 的回复:
那你就把cusid字段在select和插入的时候都加上,显示的时候隐藏列就可以了,貌似这个语句可以dataGridView2.Columns["cusid"].Visible = false;
关键是给cusid赋值啊,cusid是用户登陆时的帐号,我要把这个帐号赋值给cusid。
  • 打赏
  • 举报
回复
那你就把cusid字段在select和插入的时候都加上,显示的时候隐藏列就可以了,貌似这个语句可以dataGridView2.Columns["cusid"].Visible = false;
  • 打赏
  • 举报
回复
没人会弄吗?哎。。大神都泡水区去了,看来得去那边发贴了
Castiel丶Luo 2013-05-16
  • 打赏
  • 举报
回复
列 隐藏就是~~~~
  • 打赏
  • 举报
回复
form load 代码
cuslistsda = new SqlDataAdapter("select id, [Cdate] as 日期, [CCode] as 型号, [CType] as 分类, [CCost] as 成本,[OutPrice] as 出货价,[CustomerName] as 客户名称,"
                        + "[Gain] as 利润, [jinhuoshang] as 进货商, [PayMode] as 支付方式, [shui] as 是否含税, [FP] as 发票, [BZ] as 备注  from customers", conn);
            cuslistsda.Fill(cuslistds, "cuslistTable");
            this.dataGridView2.DataSource = cuslistds.Tables[0];
button代码(对dataGridView2修改后)
conn = new SqlConnection(connectionString);
            conn.Open();
            if (MessageBox.Show("确实要修改数据库吗?", "决策提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
            {
                DataTable dt = this.dataGridView2.DataSource as DataTable;
                

                if (dt != null)
                {
                    try
                    {
                        SqlDataAdapter da = new SqlDataAdapter("select id,[Cdate] as 日期, [CCode] as 型号, [CType] as 分类, [CCost] as 成本,[OutPrice] as 出货价,[CustomerName] as 客户名称,"
                        + "[Gain] as 利润, [jinhuoshang] as 进货商, [PayMode] as 支付方式, [shui] as 是否含税, [FP] as 发票, [BZ] as 备注  from Customers", conn);
                        SqlCommandBuilder scb = new SqlCommandBuilder(da);
                        DataSet ds = new DataSet();
                        da.Fill(ds, "customers");
                        da.Update(dt);
                    }
                    catch (DataException de)
                    {
                        //
                    }
                }
                MessageBox.Show("成功修改数据库!", "恭喜");
            }
            else
            {
                MessageBox.Show("放弃修改数据库!", "系统提示");
            }
        }
这样可以修改数据库了,但是新增一条记录的话cusid字段没有赋值啊。。。求指点
bindofn 2013-05-16
  • 打赏
  • 举报
回复
一样的赋值到ataGridView里,把这列不显示就好了
云飞兄 2013-05-16
  • 打赏
  • 举报
回复
引用 7 楼 happybebe 的回复:
只有一个表的操作,哥哥们,,,cusid不需要从别的表取,随意能赋个123也行啊。。
那要cusid 有什么用,
  • 打赏
  • 举报
回复
只有一个表的操作,哥哥们,,,cusid不需要从别的表取,随意能赋个123也行啊。。
云飞兄 2013-05-16
  • 打赏
  • 举报
回复
建立 类(依据表)存放数据啊,一张表一个对象,就像三层结构的 dol数据一样
云飞兄 2013-05-16
  • 打赏
  • 举报
回复
我也是菜鸟,说的不一定对
云飞兄 2013-05-16
  • 打赏
  • 举报
回复
把所有的数据都查询出来,再筛选 然后进行绑定啊, 多个表的增删改要分别做的,就像往视图里面添加数据,如果数据在视图的多子表内,就是不能添加
  • 打赏
  • 举报
回复
大牛都跑去水区灌水了吗?小牛来也行,应该很简单的,可惜我是个菜鸟
  • 打赏
  • 举报
回复
引用 1 楼 u010079085 的回复:
帮顶一下啊!@
好快!
u010079085 2013-05-16
  • 打赏
  • 举报
回复
帮顶一下啊!@
头发凌乱 2013-05-16
  • 打赏
  • 举报
回复
把cusid的 Visible=false.就隐藏了

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧