1.我在dataGridView控件里添加了一个关于学生信息的表,在窗体中添加了2个单选按钮分别表示男和女。想在选中一个学生的信息时,如果是男生就自动选中单选按钮的男,如果是女生就自动选中单选按钮的女,这个要怎么实现?2.要添加一个学生的信息(添加的代码已写好),怎么判断表中是否有相同的信息?3.本人初学,请问下dataset和datatable都是做什么用的?为什么有些时候用dataset,有些时候用datatable?

解决方案 »

  1.   

    初学,就找一本关于ADO.NET的书好好看一遍再做吧。否则这样零敲碎打,即便做出来了也是枉然。
      

  2.   

    1.在DataGridView的CellClick事件中添加如下代码
    string sex=dataGridView1.SelectRows[0].Cells["sex"].Value.toString();
    if(sex="男")
    {
     //选中性别男
    }else
    {
    //选中性别女
    }
    2.添加时和数据库中的数据做比较,相同就不允许添加3.DataSet可以比作一个内存中的数据库,DataTable是一个内存中的数据表,DataSet里可以存储多个DataTable
      

  3.   

    1.dataGridView有RowIndexChanged的事件,类似名字,记不清了,要不就是SelectIndexChanged。在该事件中,你可以获得选中行数据的信息。然后你可以根据信息来修改单选按钮的值。
    radioButton.Selected = true;2.表中数据应该有唯一键作为主键。比如学号。根据主键来判断信息是否重复。若没有学号之类的唯一值,可以添加一列,用递增的数字来做序号,以序号作为主键。3.简单的说,DataSet里包含N个DataTable你确实需要完整学习一下ADO.NET
    http://msdn.microsoft.com/zh-cn/library/e80y5yhx.aspx
      

  4.   

    自己使用后的一些 http://www.cppexample.com/csharp/ado.net.html
      

  5.   

    我给你解释下,记得给分你可以把DataTable和DataSet看做是数据容器,比如你查询数据库后得到一些结果,可以放到这种容器里,那你可能要问:我不用这种容器,自己读到变量或数组里也一样可以存起来啊,为什么用容器?原因是,这种容器的功能比较强大,除了可以存数据,还可以有更大用途。举例:在一个c/s结构的桌面数据库系统里,你可以把前面存放查询结果的容器里的数据显示到你客户端界面上,用户在界面上对数据进行添加、删除、修改,你可以把用户的操作更新到容器,等用户操作完毕了,要求更新,然后你才把容器整个的数据变化更新到中心数据库,这样做的好处是什么?就是减少了数据库操作,客户端速度提高了,数据库压力减小了。DataSet可以比作一个内存中的数据库,DataTable是一个内存中的数据表,DataSet里可以存储多个DataTablec#自带的帮助就很好,多看多试就行,别让一楼那样的吓唬住,c#入门和学习都不难,小学五年级就可以学的。
    -----------------------------------------
    这个是直接百度出来的,比我说的详细。  
      

  6.   


    怎么判断表中是否有相同的信息?
    LZ问的不完整,比如,添加学生时,要判断学号、学生姓名不能重复。
    假设 学号是stu_no,学生姓名是stu_name; 学生表是s_stu_info
    select count(*) from s_stu_info where stu_name = 'xx' or stu_no = 'oo';
    如果返回 大于0 则不能添加。
      

  7.   

    dataset有dataTableCollection和dataRelationCollectiondataTableCollection又包含datatable