ASP.NET Command 对象

ASP.NET Command 对象

 

建立数据连接以后,利用 Command 对象来执行命令并从数据源返回结果。Command 对象常用的构造函数包括两个参数,1 个是要执行的 SQL 语句,另一个是已经建立的 Connnection 对象

基本语法:

OleDbCommand Comm=new OleDbCommand("select * from grade",Conn);

Command对象比较常用Command对象的方法有,ExecuteReader()方法,ExecuteScalar() 方法和 ExecuteNonQuery()方法,这些方法主要用来执行 SQL 语句。

ExecuteReader 方法

ExecuteReader 方法将返回一个 DataReader 对象。DataReader 对象是一个仅向前的只读的数据流。主要用来执行基本 SQL 查询语句,要求 SQL 语句返回记录集。

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e) {
OleDbConnection Conn=new OleDbConnection();
Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+Server.MapPath("person.mdb");
Conn.Open();
OleDbCommand Comm=new OleDbCommand("select * from grade",Conn);
OleDbDataReader dr=Comm.ExecuteReader();
dg.DataSource=dr;
dg.DataBind();
Conn.Close();
}
</script>
<asp:DataGrid id="dg" runat="server" />

程序执行完毕将返回结果集,绑定到一个 DataGrid 对象上,然后利用 DataGrid 将结果输出到浏览器上

利用 ExecuteReader 方法可以执行带条件的 Select 语句,比如:Where 子句,Like 子句都可以利用 ExecuteReader执行

ExecuteScalar方法

ExecuteScalar 方法返回单个值,用来执行聚合函数。

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e) {
OleDbConnection Conn=new OleDbConnection();
Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("person.mdb");
Conn.Open();
String strSQL="select avg(数学) from grade";
OleDbCommand Comm=new OleDbCommand(strSQL,Conn);
Double d=(Double)Comm.ExecuteScalar();
Message.Text="所有人数学的平均成绩为"+d.ToString()+"分";
Conn.Close();
}
</script>
<asp:Label id="Message" runat="server" />

程序计算出所有人数学的平均分,然后将它显示到浏览器上

ExecuteNonQuery方法

ExcuteNonQuery 方法用于执行不需要返回结果的命令

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e) {
OleDbConnection Conn=new OleDbConnection();
Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+Server.MapPath("person.mdb");
Conn.Open();
String strSQL="insert into grade (学号,姓名,数学) values (99,'小张',100)";
OleDbCommand Comm=new OleDbCommand(strSQL,Conn);
Comm.ExecuteNonQuery();
Conn.Close();
Response.Write("操作成功!");
}
</script>

程序向数据库中添加一条记录

posted @ 2006-12-22 19:52  chinaifne  阅读(1753)  评论(0编辑  收藏  举报