.Net+MySQL组合开发(二) 数据访问篇

一、建立数据库、表、添加数据
这里我们使用图形化操作的SQL Manager 2005 Lite for MySQL来建立数据,它的操作界面非常类似OFFICE软件,使用方便、很容量上手、下面开始建立数据库及表
单击"Creat New DataBase":新建DB
.Net+MySQL组合开发(二) 数据访问篇
输入密码:
.Net+MySQL组合开发(二) 数据访问篇
.Net+MySQL组合开发(二) 数据访问篇
选择客户端编码为gb2312,防乱码;也可以在新建好的数据库右键选择"DataBase Registration Info"更改编码:
.Net+MySQL组合开发(二) 数据访问篇
新建表:输入表名:
.Net+MySQL组合开发(二) 数据访问篇
新建字段

.Net+MySQL组合开发(二) 数据访问篇

.Net+MySQL组合开发(二) 数据访问篇
点击加号,手动添加数据,点出对号,提交数据:
.Net+MySQL组合开发(二) 数据访问篇
选择DDL选项,直接看到刚才操作的脚本;也可以不用上面的方式操作,直接写sql脚本来创建数据:
.Net+MySQL组合开发(二) 数据访问篇
二、ADO.NET数据操作
推荐使用MySQL Connector Net 5.0.3
web.config添加连接字符串:
.Net+MySQL组合开发(二) 数据访问篇<add name="MySqlServer" connectionString="Data Source=127.0.0.1;User ID=root;Password=123;DataBase=BOOK;Charset=gb2312"/>

为了方便,把对数据的访问封装到一个类中:
 1.Net+MySQL组合开发(二) 数据访问篇// 执行sql 
 2.Net+MySQL组合开发(二) 数据访问篇public int ExecuteSql(string strSql, MySqlParameter [] myPar)
 3.Net+MySQL组合开发(二) 数据访问篇    {
 4.Net+MySQL组合开发(二) 数据访问篇        try
 5.Net+MySQL组合开发(二) 数据访问篇        {
 6.Net+MySQL组合开发(二) 数据访问篇            myConnection.Open();
 7.Net+MySQL组合开发(二) 数据访问篇            MySqlCommand cmd = new MySqlCommand(strSql, myConnection);
 8.Net+MySQL组合开发(二) 数据访问篇            if (myPar != null)
 9.Net+MySQL组合开发(二) 数据访问篇            {
10.Net+MySQL组合开发(二) 数据访问篇                foreach (MySqlParameter spar in myPar)
11.Net+MySQL组合开发(二) 数据访问篇                {
12.Net+MySQL组合开发(二) 数据访问篇                    cmd.Parameters.Add(spar);
13.Net+MySQL组合开发(二) 数据访问篇                }

14.Net+MySQL组合开发(二) 数据访问篇            }

15.Net+MySQL组合开发(二) 数据访问篇            int result = cmd.ExecuteNonQuery();
16.Net+MySQL组合开发(二) 数据访问篇            myConnection.Close();
17.Net+MySQL组合开发(二) 数据访问篇            return result;
18.Net+MySQL组合开发(二) 数据访问篇        }

19.Net+MySQL组合开发(二) 数据访问篇        catch
20.Net+MySQL组合开发(二) 数据访问篇        {
21.Net+MySQL组合开发(二) 数据访问篇            return 0;
22.Net+MySQL组合开发(二) 数据访问篇        }

23.Net+MySQL组合开发(二) 数据访问篇    }
获取数据:
 1.Net+MySQL组合开发(二) 数据访问篇 public DataSet GetDataSet(string strSql)
 2.Net+MySQL组合开发(二) 数据访问篇    {
 3.Net+MySQL组合开发(二) 数据访问篇        try
 4.Net+MySQL组合开发(二) 数据访问篇        {
 5.Net+MySQL组合开发(二) 数据访问篇            MySqlDataAdapter da = new MySqlDataAdapter(strSql, myConnection);
 6.Net+MySQL组合开发(二) 数据访问篇            DataSet ds = new DataSet();
 7.Net+MySQL组合开发(二) 数据访问篇            da.Fill(ds);
 8.Net+MySQL组合开发(二) 数据访问篇            return ds;
 9.Net+MySQL组合开发(二) 数据访问篇        }

10.Net+MySQL组合开发(二) 数据访问篇        catch
11.Net+MySQL组合开发(二) 数据访问篇        {
12.Net+MySQL组合开发(二) 数据访问篇            return null;
13.Net+MySQL组合开发(二) 数据访问篇        }

14.Net+MySQL组合开发(二) 数据访问篇    }

在页面中我们用一个gridview实现数据的读取、写入、编辑、删除等操作:
.Net+MySQL组合开发(二) 数据访问篇
数据绑定:
1.Net+MySQL组合开发(二) 数据访问篇 //databind
2.Net+MySQL组合开发(二) 数据访问篇    protected void BindGrid()
3.Net+MySQL组合开发(二) 数据访问篇    {
4.Net+MySQL组合开发(二) 数据访问篇        DataSet ds = obj.GetDataSet("SELECT * FROM book ORDER BY bid");
5.Net+MySQL组合开发(二) 数据访问篇        GridView1.DataSource = ds;
6.Net+MySQL组合开发(二) 数据访问篇        GridView1.DataBind();
7.Net+MySQL组合开发(二) 数据访问篇        ds.Dispose();
8.Net+MySQL组合开发(二) 数据访问篇    }
添加数据:
 1.Net+MySQL组合开发(二) 数据访问篇 string strSQL = "INSERT INTO book (bname,author,publish) VALUES (?bname,?author,?publish)";
 2.Net+MySQL组合开发(二) 数据访问篇            MySqlParameter[] mysp =
 3.Net+MySQL组合开发(二) 数据访问篇            {
 4.Net+MySQL组合开发(二) 数据访问篇                new MySqlParameter ("?bname",MySqlDbType.VarChar ),
 5.Net+MySQL组合开发(二) 数据访问篇                new MySqlParameter ("?author",MySqlDbType.VarChar),
 6.Net+MySQL组合开发(二) 数据访问篇                new MySqlParameter ("?publish",MySqlDbType.VarChar)
 7.Net+MySQL组合开发(二) 数据访问篇            }
;
 8.Net+MySQL组合开发(二) 数据访问篇            mysp[0].Value = txtName.Text.Trim();
 9.Net+MySQL组合开发(二) 数据访问篇            mysp[1].Value = txtAuthor.Text.Trim();
10.Net+MySQL组合开发(二) 数据访问篇            mysp[2].Value = txtPublish.Text.Trim();
11.Net+MySQL组合开发(二) 数据访问篇            if (obj.ExecuteSql(strSQL, mysp) == 1)
12.Net+MySQL组合开发(二) 数据访问篇            {
13.Net+MySQL组合开发(二) 数据访问篇                Response.Write("<script>alert('提交成功');</script>");
14.Net+MySQL组合开发(二) 数据访问篇                BindGrid();
15.Net+MySQL组合开发(二) 数据访问篇                txtName.Text = txtAuthor.Text = txtPublish.Text = "";
16.Net+MySQL组合开发(二) 数据访问篇            }
注意参数符号是"?"而不是"@",这一点不同于sql server
其它编辑等操作代码等请下载文件
下载详细完整的代码文件/Files/chy710/MySQL_ADONET.rar
下篇预告:mysql开发中的乱码问题
本文转自chy710博客园博客,原文链接:http://www.cnblogs.com/chy710/archive/2007/02/02/637935.html,如需转载请自行联系原作者