本节实现从mysql数据库中的form数据库中查询login表,并显示在web UI上。
vs2013连接mysql的过程见上一节:
http://blog.csdn.net/qq_16912257/article/details/49951865
过程分为以下几步:
1.用connection string(连接配置字符串)作为参数创建一个连接对象。
MySqlConnection connection = new
MySqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings[“Con”]
.ConnectionString.ToString());
2.打开连接。
connection.Open();
3.用刚刚创建的connection对象和sql命令作为参数创建一个sqlcommand对象。
(注意,MySqlCommand的构造函数有好几种,并不限于以下这种)
MySqlCommand command = new MySqlCommand(“SELECT * FROM login”, connection);
4.如果你的sql命令有返回值(比如select语句),执行sql命令后将返回值赋给一个DataReader对象(我们需要的数据都可以通过操作DataReader对象读出来)。
MySqlDataReader dataReader = command.ExecuteReader();
5.通过DataReader对象读取数据。
(怎么读取看需求。示例见下)
6.关闭DataReader对象。
(注意:读完就关闭,否则DataReader会独占Connection对象,导致其它对象无法使用Connection对象)
dataReader.Close();
7.关闭连接对象。
connection.Close();
完整示例:
c#代码示例如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data;
using MySql.Data.MySqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MySqlConnection connection = new MySqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["Con"]
.ConnectionString.ToString());
try
{
connection.Open();
MySqlCommand command = new MySqlCommand("SELECT * FROM login", connection);
MySqlDataReader dataReader = command.ExecuteReader();
Response.Write("<h3>DataReader对象读取数据</h3>");
Response.Write("<table border=1 cellspacing=0 cellpadding=2>");
Response.Write("<tr bgcolor=ccffff>");
for (int i = 0; i < dataReader.FieldCount; i++)
{
Response.Write("<td>" + dataReader.GetName(i) + "</td>");
}
Response.Write("</tr>");
while (dataReader.Read())
{
Response.Write("<tr>");
for (int i = 0; i < dataReader.FieldCount; i++)
{
Response.Write("<td>" + dataReader[i].ToString() + "</td>");
}
Response.Write("</tr>");
}
Response.Write("</table>");
dataReader.Close();
}
catch(Exception err)
{
}
finally
{
connection.Close();
}
}
}
结果: