Command主要有三个方法:
ExecuteNonQuery () :执行一个SQL语句,返回受影响的行数,这个方法主要用于执行对数据库执行增加、更新、删除操作,注意查询的时候不是调用这个方法。
ExecuteReader ():执行一个查询的SQL语句,返回一个DataReader对象。
ExecuteScalar ():从数据库检索单个值。这个方法主要用于统计操作。
有关ExecuteNonQuery ()和ExecuteReader ()的用法在稍后马上提到,这里我主要演示ExecuteScalar ()这个方法的用法。
请看下面的例子:
我们可以看到上面的SQL语句执行的结果是一行一列的结果集,ExecuteScalar ()这个方法就是针对这种情况的,这个方法只返回查询结果集的第一行第一列。
同样,因为这个页面的代码和设计部分非常简单,仍然采用的单页模式,代码如下:
01.<%@ Page Language="C#" %>
02.<%@ Import Namespace="System.Data.SqlClient" %>
03.<%@ Import Namespace="System.Data" %>
04.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "" >
22.<head runat="server">
23. <title>无标题页</title>
24.</head>
25.<body>
26. <form id="form1" runat="server">
27. <div>
28.
29. </div>
30. </form>
31.</body>
32.</html>
这个页面执行的结果如下:
在操作数据库的时候,为了提高性能,都遵循一个原则:数据库连接对象应该尽可能晚打开,尽可能早关闭。在上面的例子中,在Command对象需要执行数据库操作之前才打开数据库连接对象,执行数据库操作之后马上就关闭了数据库连接对象。希望初学者们记住这个原则。