目录
教学资源
教学运行
提醒实验10: 数据集与SqlDataAdapter 返回
实验课程:
C#数据库系统开发
开课学院:
商学院
开课专业:
信息管理与信息系统
教材:
软件:
实验指导:
实验介绍

一、实验名称和性质

 

所属课程

C#数据库系统设计      

实验名称

数据集与SqlDataAdapter

实验学时

2

实验性质

□验证  □综合 □设计

必做/选做

□必做 □选做

 

二、实验目的

1.        了解DataSet的工作原理、层次结构类。

2.        了解SqlDataAdapter的工作原理。

3.        掌握如何创建SqlDataAdapter对象

4.        掌握SqlDataAdapter的常用属性和方法。

 

三、实验的软硬件环境要求

硬件环境要求:

         PC机(单机)

 

使用的软件名称、版本号以及模块:

         Windows XP下的SQL Server 2005(或 SQL Server 2008

四、知识准备

1.DataSet的工作原理:将数据从数据库中提出放入内存中。

2.DataSet的层次结构类

说明

DataTableCollection

包含特定数据集的所有      DataTable 对象

DataTable

表示数据集中的一个表

DataColumnCollection

表示 DataTable 对象的结构

DataRowCollection

表示 DataTable 对象中的实际数据行

DataColumn

表示 DataTable 对象中列的结构

DataRow

表示 DataTable 对象中的一个数据行

 

 

3DataSet的创建

DataSet dataSet = new DataSet("MySchool"); MySchool”是可选项

然后SqlDataAdapter.Fill()方法填充。

4SqlDataAdapter的工作原理

 

5SqlDataAdapter的创建方法

1)用查询串和连接字符串

SqlDataAdapter da=new SqlDataAdapter (strSQL,strConn);

该方式会为每个SqlDataAdapter 创建一个新的SQLconnection对象,应适当选择。

2)用查询串和连接对象

SQLconnection cn=new sqlConnection(strConn);

SqlDataAdapter da=new SqlDataAdapter (strSQL,cn);

比较常用的方式

3)使用sqlcommand对象

SQLCOMMAND cmd=new sqlcommand(strSQL,CN);

SqlDataAdapter da=new SqlDataAdapter (cmd);

已存在一个sqlcommand对象时使用

 

6.利用SqlDataAdapter填充DataTable,然后利用DataTableAdd(),Delete()等方法来实现记录的插入、修改和删除。

 

 

 

 

 

 

 

 

 









1btnAdd_Click()

v string sqlStr = "select sno,cno,grade from sc";

v SqlDataAdapter sda = new SqlDataAdapter(sqlStr, conn);

v DataTable dt = new DataTable();

v sda.Fill(dt);

v DataRow dr = dt.Rows.Add();

v dr[0] = txtSNO.Text;

v dr[1] = txtCNO.Text;

v dr[2] = int.Parse (txtGrade.Text);

v SqlCommandBuilder scb = new SqlCommandBuilder(sda);

v sda.Update(dt.GetChanges);           

v dt.AcceptChanges();

(2)btnUpdate_Click()

v string sqlStr = "select sno,cno,grade from sc where sno='"+txtSNO .Text +"' and cno='"+txtCNO .Text +"'";

v SqlDataAdapter sda = new SqlDataAdapter(sqlStr, conn);

v DataTable dt = new DataTable();

v sda.Fill(dt);

v DataRow dr = dt.Rows[0];

v  dr[2] = int.Parse(txtGrade.Text);

v SqlCommandBuilder scb = new SqlCommandBuilder(sda);

v sda.Update(dt.GetChanges);

v dt.AcceptChanges();

(3)btnDelete_Click()

string connStr = @"Data Source=LENOVO-PC;Initial Catalog=Student;Integrated Security=True";

            SqlConnectionconn = new SqlConnection(connStr);

            stringsqlStr = "select* from sc where sno='"+ txtSNO.Text + "' and cno='" + txtCNO.Text + "'";

            SqlDataAdaptersda = new SqlDataAdapter(sqlStr, conn);

            DataTabledt = new DataTable();

            sda.Fill(dt);

            //DataRow dr = new DataRow();

             dt.Rows[0].Delete ();

            SqlCommandBuilderscb = new SqlCommandBuilder(sda);

            sda.Update(dt.GetChanges());

            dt.AcceptChanges();

 

 五、实验内容

1.界面上有3个命令按钮btnShowbtnNextPagebtnPreviousPage。一个网格控件dataGridView1。根据下面界面设置窗体及对象属性。

 

2利用SqlDataAdapter填充DataTable,然后利用DataTableAdd(),Delete()等方法来实现学生信息表中记录的插入、修改和删除。

 

六、实验报告

针对每个实验写出操作步骤和结果。