📄 mdhowexecutecommand.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML dir=ltr>
<HEAD>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=GB_2312-80">
<title>步骤 3:执行命令(ADO 教程)</title>
<style>@import url(msdn_ie4.css);</style>
</HEAD>
<BODY>
<h3><a name="mdhowexecutecommand"></a>步骤 3:执行命令(ADO 教程)</h3>
<p><a href="dir.htm">目录</a></p>
<p class=label>
<b>您所在的步骤...</b>
<ul type=disc>
<li>
连接数据源。<br><br></li>
<li>
可选择创建表示 SQL 查询命令的对象。<br><br></li>
<li>
可选择在 SQL 命令中将值指定为变量参数。<br><br></li>
<li>
<b>执行命令。如果命令以行返回,将行存储在存储对象中。</b><br><br></li>
<li>
可选择对数据进行定位、检查、操作和编辑。<br><br></li>
<li>
适当情况下,可以使用存储对象中的变更对数据源进行更新。可选择在事务处理中嵌入更新数据。<br><br></li>
<li>
在使用事务之后,可以接受或拒绝在事务中所做的更改。结束事务。 </li>
</ul>
<p class=label>
<b>讨论</b></p>
<p>
返回 <b>Recordset</b> 的方法有三种:<b>Connection.Execute</b>、<b>Command.Execute </b>以及 <b>Recordset.Open</b>。以下是它们的 <b>Visual Basic </b>语法:</p>
<pre>connection.<span class=cfe><b>Execute</b></span>(<i>CommandText</i>, <i>RecordsAffected</i>, <i>Options</i>)
command.<span class=cfe><b>Execute</b></span>(<i>RecordsAffected</i>, <i>Parameters</i>, <i>Options</i>)
recordset.<span class=cfe><b>Open</b></span> <i>Source</i>, <i>ActiveConnection</i>, <i>CursorType</i>, <i>LockType</i>, <i>Options</i>
</pre>
<p>
通过优化这些方法可发挥特定对象的优势。</p>
<p>
必须在发出命令之前打开连接,每个发出命令的方法分别代表不同的连接:
<ul type=disc>
<li>
<b>Connection.Execute</b> 方法使用由 <b>Connection </b>对象自身表现的连接。<br><br></li>
<li>
<b>Command.Execute</b> 方法使用在其 <b>ActiveConnection </b>属性中设置的 <b>Connection </b>对象。<br><br></li>
<li>
<b>Recordset.Open</b> 方法所指定的或者是连接字符串,或者是 <b>Connection </b>对象操作数;否则使用在其 <b>ActiveConnection </b>属性中设置的 <b>Connection </b>对象。</li>
</ul>
<p>
另一个不同点是命令在三种方法中的指定方式:
<ul type=disc>
<li>
在 <b>Connection.Execute </b>方法中,命令是字符串。<br><br></li>
<li>
在 <b>Command.Execute</b> 方法中,命令是不可见的,它在 <b>Command.CommandText</b> 属性中指定。另外,此命令可含有参数符号 ('?'),它可以由“参数”VARIANT 数组参数中的相应参数替代。<br><br></li>
<li>
在 <b>Recordset.Open </b>方法中,命令是 <i>Source</i> 参数,它可以是字符串或 <b>Command </b>对象。</li>
</ul>
<p>
每种方法可根据性能需要替换使用:
<ul type=disc>
<li>
<b>Execute </b>方法针对(但不局限)于执行不返回数据的命令。 <br><br></li>
<li>
两种 <b>Execute </b>方法都可返回快速只读、仅向前 <b>Recordset</b> 对象。<br><br></li>
<li>
<b>Command.Execute </b>方法允许使用可高效重复利用的参数化命令。<br><br></li>
<li>
另一方面,<b>Open</b> 方法允许指定 <b>CursorType</b> (用于访问数据的策略及对象)和 <b>LockType</b> (指定其他用户的 <b>isolation</b> 级别以及游标是否在 <b>immediate</b> 或 <b>batch modes </b>中支持更新)。<br><br></li>
<li>
请深入了解这些选项,它们体现了很多 <a href="mdobjodbrec.htm">Recordset</a> 的功能。 </li>
</ul>
<p>
本教程使用动态游标对 <b>Recordset </b>的所有变更进行批处理,为此请使用以下方法:</p>
<pre>Recordset rs = New ADODB.Recordset
rs.<span class=cfe><b>Open</b></span> cmd, conn, adOpenDymanic, adLockBatchOptimistic
</pre>
<p>
<B><b>下一步 </b></B><a href="mdhowmanipulatedata.htm">步骤 4</a></p>
<center> <A HREF="http://www.51windows.Net">www.51windows.Net</A></center>
<SCRIPT LANGUAGE="JavaScript" src="/log/sitelog2.asp"></SCRIPT>
<script src="script.js"></script></BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -