C#实验2 实现数据库的连接.docx
- 文档编号:8668356
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:18
- 大小:490.62KB
C#实验2 实现数据库的连接.docx
《C#实验2 实现数据库的连接.docx》由会员分享,可在线阅读,更多相关《C#实验2 实现数据库的连接.docx(18页珍藏版)》请在冰豆网上搜索。
C#实验2实现数据库的连接
东华大学
计算机科学与技术学院
实验报告
(2016~2017学年度第二学期)
课程名称
C#程序设计
实验名称
ADO.NET数据库访问
姓名
章阳
教师
凌韵
专业
网络工程
班级
1班
一、实验目的:
掌握ADO.NET访问数据库基本方法和流程,掌握数据绑定
二、实验要求
(1)、界面要求
(2)功能要求
(a).程序启动时能显示csscore表格中的数据,如下图所示
(b).“学号”右边的combox绑定csscore表格中的姓名字段
(c)“查询”按钮能查询combox框中选中学生的成绩(总评字段);“Ave”——班级平均分
“Max”——最高分;“Min”——班级最低分,“sort”——对该班学习成绩排序
(d)“A”、”B”、”C”、”D”、”E”键把学生成绩分成A、B、C、D、E5个等级分别输出,
三、实验代码
代码要配合程序界面进行说明
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
usingSystem.Windows.Forms;
usingSystem.Data.OleDb;
namespaceADO.NET数据库访问
{
publicpartialclassForm1:
Form
{
publicForm1()
{
InitializeComponent();
}
privatevoidcmb_Name_SelectedIndexChanged(objectsender,EventArgse)
{
}
stringmystr,mysql;//定义数据库连接字段以及数据库Sql语句查询字段
OleDbConnectionmyconn=newOleDbConnection();//建立到物理数据库的连接
OleDbCommandmycmd=newOleDbCommand();//创建OleDbCommand对象,以便执行数据访问和修改操作
privatevoidForm1_Load(objectsender,EventArgse)
{
//设置ConnectionString的属性,也就是连接引擎提供者和数据源的路径
mystr=@"Provider=Microsoft.ACE.OLEDB.12.0;DataSource=D:
\C#程序\school1.mdb";
myconn.ConnectionString=mystr;
myconn.Open();//打开数据库的连接
mysql="SELECT学号,姓名,考试,总评FROMcsscore";//SQL查询语句
mycmd.CommandText=mysql;//获取要对数据源执行的SQL语句
mycmd.Connection=myconn;//数据命令所使用的连接对象
OleDbDataReadermyreader=mycmd.ExecuteReader();//创建OleDbDataReader对象
listBox1.Items.Add("\n");
listBox1.Items.Add("13级船山学院建筑1班C语言程序设计成绩");
listBox1.Items.Add("\n");
listBox1.Items.Add("——————————————————————————————————");
listBox1.Items.Add("序号\t学号\t\t\t姓名\t\t考试\t\t总评");
listBox1.Items.Add("——————————————————————————————————");
intcount=0;//定义一个标识每一个学生的记录序号的计数器
while(myreader.Read())//循环访问数据集中的数据,实现将数据记录显示到控件listbox上面
{
listBox1.Items.Add(String.Format("{0}\t{1}\t\t{2}\t\t{3}\t\t{4}",++count,myreader[0],myreader[1],myreader[2],myreader[3]));
listBox1.Items.Add("\n");
}
myreader.Close();//关闭连接
mysql="SELECT姓名FROMcsscore";//SQL查询语句
OleDbDataAdaptermyda=newOleDbDataAdapter(mysql,myconn);//创建一个数据适配器对象
DataSetmyds=newDataSet();//创建一个数据集对象,存放SQL语句查询的结果集
myda.Fill(myds,"csscore");//向DataSet对象填充从数据源中查询的数据
cmb_Name.DataSource=myds;//绑定控件cmb_Name数据源为上述创建的数据集
cmb_Name.DisplayMember="csscore.姓名";//绑定控件的显示成员为表格的性名列
myconn.Close();//关闭数据库的连接
}
privatevoidbtn_Check_Click(objectsender,EventArgse)
{
OleDbConnectionmyconn=newOleDbConnection();
OleDbCommandmycmd=newOleDbCommand();
mystr=@"Provider=Microsoft.ACE.OLEDB.12.0;DataSource=D:
\C#程序\school1.mdb";
myconn.ConnectionString=mystr;
myconn.Open();//打开数据库的连接
mysql="SELECT总评FROMcsscoreWHERE姓名=@Name";//查询comboBox中指定学生的总评成绩
mycmd.CommandText=mysql;//获取要对数据源执行的SQL语句
mycmd.Connection=myconn;//数据命令所使用的连接对象
mycmd.Parameters.Add("@Name",OleDbType.VarChar,10).Value=cmb_Name.Text;//通过指定学生的姓名,来获取他的总评成绩
txt_Check.Text=mycmd.ExecuteScalar().ToString();//通过ToString()方法来获取指定学生的总评成绩
myconn.Close();//关闭数据库的连接
}
privatevoidbtn_Average_Click(objectsender,EventArgse)
{
myconn.Open();//打开数据库连接
mysql="SELECTAVG(总评)FROMcsscore";//SQL查询语句:
求平均分
mycmd.CommandText=mysql;//获取要对数据源执行的SQL语句
mycmd.Connection=myconn;//数据命令所使用的连接对象
txt_AVG.Text=mycmd.ExecuteScalar().ToString();//执行查询,并返回查询所返回的结果集中第一行第一列,忽略其他行或列
myconn.Close();//关闭数据库连接
}
privatevoidbtn_Max_Click(objectsender,EventArgse)
{
myconn.Open();//打开数据库连接
mysql="SELECTMAX(总评)FROMcsscore";//SQL查询语句:
求平均分
mycmd.CommandText=mysql;//获取要对数据源执行的SQL语句
mycmd.Connection=myconn;//数据命令所使用的连接对象
txt_Max.Text=mycmd.ExecuteScalar().ToString();//执行查询,并返回查询所返回的结果集中第一行第一列,忽略其他行或列
myconn.Close();//关闭数据库连接
}
privatevoidbtn_Min_Click(objectsender,EventArgse)
{
myconn.Open();//打开数据库连接
mysql="SELECTMIN(总评)FROMcsscore";//SQL查询语句:
求平均分
mycmd.CommandText=mysql;//获取要对数据源执行的SQL语句
mycmd.Connection=myconn;//数据命令所使用的连接对象
txt_Min.Text=mycmd.ExecuteScalar().ToString();//执行查询,并返回查询所返回的结果集中第一行第一列,忽略其他行或列
myconn.Close();//关闭数据库连接
}
privatevoidbtn_A_Click(objectsender,EventArgse)
{
DataSetmyds=newDataSet();//创建一个数据集对象
myconn.Open();//打开数据库连接
mysql="SELECT*FROMcsscore";//查询csscore表格中的所有数据
OleDbDataAdaptermyda=newOleDbDataAdapter(mysql,myconn);//创建一个数据适配器对象,获取数据结果集
myda.Fill(myds,"csscore");//使用Fill将查询的结果填充至新建的数据集对象myds中
myconn.Close();//数据库使用完毕,关闭连接,节省资源
DataViewmydv=newDataView(myds.Tables["csscore"]);//创建一个数据视图对象,提供给表csscore的列排序、过滤记录
mydv.Sort="总评DESC";//降序排序的依据是"总评"列,
mydv.RowFilter="总评>=90";//筛选90分以上的记录
listBox1.Items.Clear();//清空listbox1之前显示的内容
listBox1.Items.Add("\n");
listBox1.Items.Add("———————————成绩为优秀的学生信息———————————");
listBox1.Items.Add("\n");
listBox1.Items.Add("————————————————————————————————");
listBox1.Items.Add("学号\t\t姓名\t\t考试\t\t总评");
listBox1.Items.Add("————————————————————————————————");
listBox1.Items.Add("\n");
for(inti=0;i { listBox1.Items.Add(String.Format("{0}\t{1}\t\t{2}\t\t{3}", mydv[i]["学号"],mydv[i]["姓名"],mydv[i]["考试"],mydv[i]["总评"])); listBox1.Items.Add("\n"); } } privatevoidbtn_B_Click(objectsender,EventArgse) { DataSetmyds=newDataSet();//创建一个数据集对象 myconn.Open();//打开数据库连接 mysql="SELECT*FROMcsscore";//查询csscore表格中的所有数据 OleDbDataAdaptermyda=newOleDbDataAdapter(mysql,myconn);//创建一个数据适配器对象,获取数据结果集 myda.Fill(myds,"csscore");//使用Fill将查询的结果填充至新建的数据集对象myds中 myconn.Close();//数据库使用完毕,关闭连接,节省资源 DataViewmydv=newDataView(myds.Tables["csscore"]);//创建一个数据视图对象,提供给表csscore的列排序、过滤记录 mydv.Sort="总评DESC";//降序排序的依据是"总评"列, mydv.RowFilter="总评>=80AND总评<90";//筛选90分以上的记录 listBox1.Items.Clear();//清空listbox1之前显示的内容 listBox1.Items.Add("\n"); listBox1.Items.Add("———————————成绩为良好的学生信息———————————"); listBox1.Items.Add("\n"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("学号\t\t姓名\t\t考试\t\t总评"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("\n"); for(inti=0;i { listBox1.Items.Add(String.Format("{0}\t{1}\t\t{2}\t\t{3}", mydv[i]["学号"],mydv[i]["姓名"],mydv[i]["考试"],mydv[i]["总评"])); listBox1.Items.Add("\n"); } } privatevoidbtn_C_Click(objectsender,EventArgse) { DataSetmyds=newDataSet();//创建一个数据集对象 myconn.Open();//打开数据库连接 mysql="SELECT*FROMcsscore";//查询csscore表格中的所有数据 OleDbDataAdaptermyda=newOleDbDataAdapter(mysql,myconn);//创建一个数据适配器对象,获取数据结果集 myda.Fill(myds,"csscore");//使用Fill将查询的结果填充至新建的数据集对象myds中 myconn.Close();//数据库使用完毕,关闭连接,节省资源 DataViewmydv=newDataView(myds.Tables["csscore"]);//创建一个数据视图对象,提供给表csscore的列排序、过滤记录 mydv.Sort="总评DESC";//降序排序的依据是"总评"列, mydv.RowFilter="总评>=70AND总评<80";//筛选90分以上的记录 listBox1.Items.Clear();//清空listbox1之前显示的内容 listBox1.Items.Add("\n"); listBox1.Items.Add("———————————成绩为中等的学生信息———————————"); listBox1.Items.Add("\n"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("学号\t\t姓名\t\t考试\t\t总评"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("\n"); for(inti=0;i { listBox1.Items.Add(String.Format("{0}\t{1}\t\t{2}\t\t{3}", mydv[i]["学号"],mydv[i]["姓名"],mydv[i]["考试"],mydv[i]["总评"])); listBox1.Items.Add("\n"); } } privatevoidbtn_D_Click(objectsender,EventArgse) { DataSetmyds=newDataSet();//创建一个数据集对象 myconn.Open();//打开数据库连接 mysql="SELECT*FROMcsscore";//查询csscore表格中的所有数据 OleDbDataAdaptermyda=newOleDbDataAdapter(mysql,myconn);//创建一个数据适配器对象,获取数据结果集 myda.Fill(myds,"csscore");//使用Fill将查询的结果填充至新建的数据集对象myds中 myconn.Close();//数据库使用完毕,关闭连接,节省资源 DataViewmydv=newDataView(myds.Tables["csscore"]);//创建一个数据视图对象,提供给表csscore的列排序、过滤记录 mydv.Sort="总评DESC";//降序排序的依据是"总评"列, mydv.RowFilter="总评>=60AND总评<70";//筛选90分以上的记录 listBox1.Items.Clear();//清空listbox1之前显示的内容 listBox1.Items.Add("\n"); listBox1.Items.Add("———————————成绩为及格的学生信息———————————"); listBox1.Items.Add("\n"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("学号\t\t姓名\t\t考试\t\t总评"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("\n"); for(inti=0;i { listBox1.Items.Add(String.Format("{0}\t{1}\t\t{2}\t\t{3}", mydv[i]["学号"],mydv[i]["姓名"],mydv[i]["考试"],mydv[i]["总评"])); listBox1.Items.Add("\n"); } } privatevoidbtn_E_Click(objectsender,EventArgse) { DataSetmyds=newDataSet();//创建一个数据集对象 myconn.Open();//打开数据库连接 mysql="SELECT*FROMcsscore";//查询csscore表格中的所有数据 OleDbDataAdaptermyda=newOleDbDataAdapter(mysql,myconn);//创建一个数据适配器对象,获取数据结果集 myda.Fill(myds,"csscore");//使用Fill将查询的结果填充至新建的数据集对象myds中 myconn.Close();//数据库使用完毕,关闭连接,节省资源 DataViewmydv=newDataView(myds.Tables["csscore"]);//创建一个数据视图对象,提供给表csscore的列排序、过滤记录 mydv.Sort="总评DESC";//降序排序的依据是"总评"列, mydv.RowFilter="总评<60";//筛选90分以上的记录 listBox1.Items.Clear();//清空listbox1之前显示的内容 listBox1.Items.Add("\n"); listBox1.Items.Add("———————————成绩为不及格的学生信息——————————"); listBox1.Items.Add("\n"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("学号\t\t姓名\t\t考试\t\t总评"); listBox1.Items.Add("————————————————————————————————"); listBox1.Items.Add("\n"); for(inti=0;i { listBox1.Items.Add(String.Format("{0}\t{1}\t\t{2}\t\t{3}", mydv[i]["学号"],mydv[i]["姓名"],mydv[i]["考试"],mydv[i]["总评"])); listBox1.Items.Add("\n"); } } privatevoidbtn_Sort_Click(objectsender,EventArgse) { DataSetmyds=newDataSet();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C#实验2 实现数据库的连接 C# 实验 实现 数据库 连接