Mysql教程

21.4 本章实例

本节将新建ASP.NET丁网站。在程序中完成下面的操作:

(1)连接MySQL数据库。然后操作school数据库下的student表和score表。

(2)向student表中插入两条记录,并且在页面显示插入的记录数。INERT语句如下:

INSERT INTO student VALUES(907, 'Jack', ’男', 1984,'计算机', '北京市昌平区');
INSERT INTO student VALUES(908,  'Tom', '男', 1987, '英语', '北京市海淀区');

(3)从student表和score表中査询出所有记录,并且显示在页面上。

(4)从student表中删除计算机系学生的信息。SELECT语句如下:

DELETE FROM student WHERE department='计算机系';

(4)关闭打开的所有数据库对象。

根据题目要求,创建一个“ASP.NET网站”。创建成功后,需要添加Connectcn/Net驱动程序。在Microsoft Visual Studio的菜单栏上选择Website(网站)|AddReference(添加引),从弹出的界面中选择MySql.Data组件,然后单击【确定】按钮。这样即可将 Connector/et驱动程序添加到网站中。

根据上述要求编写的代码如下:

//下面是DB类的代码,代码中包括连接MySQL数据库、插入数据、查询数据、删除数据的操作
using System;
using System.Data;	//使用 DataSet 和 DataTable 时,必须先引用 System.Data
using System. Config u rati on;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MySql.Data.MySqlClient;
public partial class DB : System.Web.UI.Page
//使用连接和操作MySQL的方法,必须应用MySql.Data.MySqlClient
{
//创建 MySqlConnection 对象
MySqlConnection con = new MySqlConnection("Host=localhost;Database=test;"+"Username=root; Password=root");
//下面是Page_load()方法,该方法的功能是加载页面
protected void Page_Load(object sender, EventArgs e)
{
if (!lsPostBack)
{
Label1.Text ="'!;
}
}
//下面是Button_Click方法,该方法的功能是插入两条记录
protected void Button1_Click(object sender, EventArgs e)
//打开 MySqlConnection 对象 //新建 MySqlCommand 对象
con.Open();
MySqlCommand com1 = new MySqlCommand();
//将 MySqlConnection 对象与 MySqlCommand 对象绑定
com1.Connection = con;
//MySqlCommand 对象获取 INSERT 对象
com1 .CommandText="INSERT INTO student VALUES(907,'Jack','男',1984.'计算机','北京市昌平区',"+" (908, 'Tom','男',1987,'英语', '北京市海淀区')";
int i = com1 .ExecuteNonQuery();	//执行INSERT语句,并返回插入的记录数
Response.Write(i);	//输出变量 i 的值
con.Close();	//关闭 MySqlConnection 对象
}
//下面是咖btn_show_Click()方法,该方法的功能是查询score表和student表的数据
protected void btn_show_Click(object sender, EventArgs e)
{
con.Open();	//打开 MySqlConnection 对象
string selectstu = "SELECT * FROM student";
//定义字符串变量,将SELECT语句赋值给变量
string selectsco = "SELECT * FROM score";
//下面两行代码创建两个MySqlDataAdapter对象,并且实例化
MySqlDataAdapter mda1 = new MySqlDataAdapter(selectstu,con1);
MySqlDataAdapter mda2 = new MySqlDataAdapter(selectsco ,con1);
//下面两行代码创建两个DataSet对象,并且实例化
DataSet ds1 = new DataSet();
DataSet ds2 = new DataSet();
//下面两行代码将查询结果填充到DataSet对象中
mda1.Fill(ds1, "stu");
mda2.Fill(ds2,"sco");
//将查询结果输出到页面上。Showdata_student和Showdata_score是页面表格的ID值
Showdata_student. DataSource = ds1.Tables["stu"].DefaultView;
Showdata_student.DataBind();
Showdata_score.DataSource = ds2.T ables["sco"].DefaultView;
Showdata_score.DataBind();
con.Close();    //关闭 MySqlConnection 对象
//下面是btn_search_Click()方法,该方法的功能是删除一条记录
protected void btn_search_Click(object sender, EventArgs e)
{
con.Open();	//打开 MySqlConnection 对象
//定义字符串变量,将DELETE语句赋值给变量
string Deletestu ="Delete From student Where departmenty='计算机系'";
//创建MySqlCommand,并且获取con和DELECT语句 MySqlCommand msc = new MySqlCommand(Deletestu , con);
//执行delete语句,并且返回删除的记录数
int i = msc.ExecuteNonQuery();
Response.Write("你删除了"+i+"条记录");
con.Close();	//关闭 MySqlConnection 对象
//下面是asp页面的代码。页面上有三个按钮,分别是删除、插入和显示
//下面几行代码是asp文件的头文件,包括语言的种类、代码文件、文档类型等信息
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DB.aspx.cs" lnherits="DB" %>
<!DOCTYPE html PUBLIC "-/AA/3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.orgn^R/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtmr' >
<head runat="server">
<title>操作MySQL数据库</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<br/>
<br/> <br/>
//页面的按钮,通过按钮调用DB类中对应的方法
<center> 
//下面是删除按钮,该按钮的ID为btn_search,单击按钮后调用btn_search_Click()方法
<asp:Button ID="btn_search" runat="server" Text="删除" OnClick="btn_ search_Click"/> 
//下面是插入按钮,该按钮的ID为Button1,单击按钮后调用Button1_Click()方法
<asp:Button ID="Button1" runat="server" Text="插入" OnClick="Button1_Click"/>
//下面是显示按钮,该按钮的ID为btn_show,单击按钮后调用btn_show_Click ()方法
<asp:Button ID="btn_show" runat="server" Text="显示" OnClick="btn_show_Click" /><br/>
</center>
 
<center>
<asp:Label ID="Label1" runat="server">
</asp:Label><br/>
</center>
 
//下面的代码用于显示查询结果,以表格的形式的显示在页面上
<center>
<asp:DataGrid ID="Showdata_student" runat="server">
</asp:DataGrid>
//显示student表的信息
<asp:DataGrid ID="Showdata_score" runat="server">
</asp:DataGrid>
//显示score表的信息
</center>
</div>
</form>
</body>
</html>

通过本小节的实例,希望读者对使用ExecuteNonQuery()方法、MySqlDataAdapter对象、DataSet、对象和DataTable对象有更加深刻的认识。

关注微信获取最新动态