首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

21.3  命令

21.2节中简要介绍了针对数据库执行的命令。简言之,命令就是一个要在数据库上执行的SQL文本字符串。命令也可以是一个存储过程,或者返回表中所有列和所有行的表名(例如SELECT *样式的子句)

SQL子句作为一个参数传递给Command类的构造函数,就可以构造一个命令,如下   所示:

string source = "server=(local)\\NetSDK;" +

             " integrated security=SSPI;" +

             "database=Northwind";

string select = "SELECT ContactName,CompanyName FROM Customers";

SqlConnection conn = new SqlConnection(source);

conn.Open();

 

SqlCommand cmd = new SqlCommand(select, conn);

<provider>Command类的属性CommandType可以定义某个命令是一个SQL子句、一个存储过程的调用、或者是一个完整的表语句(仅从给定的表中选择所有的列和行)。表21-2总结了CommandType枚举

  21-2

   

Text(默认)

String select = "SELECT ContactName FROM Customers";

SqlCommand cmd = new SqlCommand(selectconn);

StoredProcedure

SqlCommandcmd=new SqlCommand("CustOrderHist"conn);

cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add("@CustomerID""QUICK");

TableDirect

OleDbCommand cmd = new OleDbCommand("Categories"conn);

cmd.CommandType = CommandType.TableDirect;

 

在执行一个存储过程时,需要把参数传送给过程。上面的示例直接设置了参数@CustomerID,但设置参数的值还可以使用其他方式,详见本章的后面。

提示:

TableDirect命令类型只对OleDb提供程序有效—— 如果试图把这个命令类型用于其他提供程序,就会产生异常。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论