解决ADO.NETSQLDataAdapter数据库删除修改和插入问题

经过长时间学习ADO.NET,于是和大家分享一下关于ADO.NET SQLDataAdapter完成对数据库的删除修改和插入的案例分析,看完本文你肯定可以全面理解ADO.NET的强大之处,大家赶快来看看吧!

创新互联建站自2013年起,先为京口等服务建站,京口等地企业,进行企业商务咨询服务。为京口企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

#T#本实验目标是要求编写一个应用程序,利用ADO.NET SQLDataAdapter对象实现可以添加、修改、删除学生基本信息的功能。数据库为school,共有六个表,该应用程序中只使用了表student。数据表student中可以先存放一部分数据,便于后面处理。数据库环境是SQL Server 2005。用鼠标双击各个Button控件,进入.cs文件编辑状态准备进行开发。代码ADO.NET SQLDataAdapter动态程序部分如下:

 
 
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Data.SqlClient;
  6. using System.Drawing;
  7. using System.Text;
  8. using System.Windows.Forms;
  9.  
  10. namespace WindowsApplication1
  11. {
  12. public partial class Form9 : Form
  13. {
  14. private SqlConnection mycon;
  15. private SqlDataAdapter myada;
  16. private SqlCommand mycomd;
  17. private SqlCommandBuilder mycbd;
  18. private DataSet myset;
  19. public Form9()
  20. {
  21. InitializeComponent();
  22. mycon = new SqlConnection("Data Source=LKJ\\SQLEXPRESS;Initial Catalog=school;Integrated Security=True");
  23. mycomd = new SqlCommand("select * from student",mycon);
  24. myada = new SqlDataAdapter();
  25. myada.SelectCommand = mycomd;
  26. mycbd = new SqlCommandBuilder(myada);
  27. myset = new DataSet();
  28. myada.TableMappings.Add("student","student");
  29. myada.TableMappings[0].ColumnMappings.Add("SNO", "学号");
  30. myada.TableMappings[0].ColumnMappings.Add("SNAME", "姓名");
  31. myada.TableMappings[0].ColumnMappings.Add("SEX", "性别");
  32. myada.TableMappings[0].ColumnMappings.Add("BIRTHDAY", "生日");
  33. myada.TableMappings[0].ColumnMappings.Add("CLASS", "班级");
  34. }
  35. /// 
  36. /// 数据修改
  37. /// 
  38. private void button1_Click(object sender, EventArgs e)
  39. {
  40. try
  41. {
  42. //将更改的数据更新到数据表里
  43. myada.Update(myset.Tables["student"].GetChanges());
  44. MessageBox.Show("数据库修改成功","成功信息");
  45. //DataTable接受更改,以便为下一次更改作准备
  46. myset.Tables["student"].AcceptChanges();
  47. }
  48. catch (SqlException ex)
  49. {
  50. MessageBox.Show(ex.ToString());
  51. }
  52. }
  53. /// 
  54. /// 初始化数据
  55. /// 
  56. private void Form9_Load(object sender, EventArgs e)
  57. {
  58. try
  59. {
  60. myada.Fill(myset, "student");
  61. }
  62. catch (SqlException ex)
  63. {
  64. MessageBox.Show(ex.ToString());
  65. }
  66. finally
  67. {
  68. mycon.Close();
  69. }
  70. dataGridView1.DataSource = myset.Tables["student"].DefaultView;
  71. }
  72. /// 
  73. /// 数据删除
  74. /// 
  75. private void button2_Click(object sender, EventArgs e)
  76. {
  77. if (MessageBox.Show("确定要删除当前行数据?", "", MessageBoxButtons.OKCancel) == DialogResult.OK)
  78. {
  79. try
  80. {
  81. //从DataTable中删除当前选中的行
  82. myset.Tables[0].Rows[dataGridView1.CurrentRow.Index].Delete();
  83. //将更改的数据更新到数据表里
  84. myada.Update(myset.Tables[0].GetChanges());
  85. MessageBox.Show("数据删除成功!");
  86. //DataTable接受更改,以便为下一次更改作准备
  87. myset.Tables[0].AcceptChanges();
  88. }
  89. catch (SqlException ex)
  90. {
  91. MessageBox.Show(ex.ToString());
  92. }
  93. }
  94. else
  95. {
  96. //取消对DataTable的更改
  97. myset.Tables[0].RejectChanges();
  98. }
  99. }
  100. }

网页标题:解决ADO.NETSQLDataAdapter数据库删除修改和插入问题
文章路径:http://www.shufengxianlan.com/qtweb/news8/171558.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联