用Command对象和RecordSet对象向数据库增加记录哪一个更好
用Command对象和RecordSet对象向数据库增加记录哪一个更好?
请问应该选择哪一个?
Command是用来做参数传递的,尤其是批量参数传递。Command对象主要是向SQL语句、StoredProcude传递参数,
依靠SQL的强大功能来完成数据库的操作;而RecordSet对象,我们可以看作是封装了数据对象,并提供了一系列
的方法和属性来简化数据库的编程。
我们通过下面用两种方法向数据库中增加一条记录的演示,可以看出,这两个对象在处理一些问题上所用的不同的方法:
RecordSet对象似乎更加好理解一些,但Command的性能更优越一些,特别是在批量的加入记录的情况下。
一、用Command对象的方法:
const adCmdText=&H0001
const adInteger=3
const adVarChar=200
Const adParamInput = &H0001
set conn=Server.CreateObject("ADODB.Connection")
set comm=Server.Createobject(“ADODB.Command”)
conn.open "Driver={ Microsoft Access Driver};DBQ="& _
Server.Mappath(“/source_asp")&"/property/chunfeng.mdb;"
comm.ActiveConnection=conn
comm.CommandType=adCmdText
comm.CommandText="insert into chunfeng (ID,Name,) "& _
&"values(?,?,?)”
set param=comm.CreateParameter("ID",adInteger,adParamInput,3,4)
comm.Parameters.Append param
set param=comm.CreateParameter("NAME",adVarChar,adParamInput,255, "intels")
comm.Parameters.Append param
comm.Execute
conn.close
二、用RecordSet对象的方法
const adCmdTable=&H0002
set conn=Server.CreateObject("ADODB.Connection")
set rs=Server.Createobject("ADODB.RecordSet")
conn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ="& _
Server.Mappath("/source_asp")&"/property/chunfeng.mdb;"
rs.ActiveConnection=conn
rs.open "chunfeng",,,adCmdTable
rs.addnew
rs("ID")=4
rs("Name")="intels"
rs.update
rs.close
conn.close
相关推荐
-
bash scp command not found的解决方法
安装了centos6.0,由于选择了最小安装,很多包没有安装,因此一些常用的命令也不支持,如下:# scp -bash: scp: command not found 我的解决方法是:在一台运行正常的CentOS 5.6服务器上找到scp所在的包:##---以下命令在运行正常的CentOS 5.6上执行 复制代码 代码如下: # which scp /usr/bin/scp # rpm -qf /usr/bin/scp openssh-clients-4.3p2-72.el5 这么看来scp所在
-
document.execCommand()的用法小结
首先要说明的是在firefox下支持不好.2D-Position 允许通过拖曳移动绝对定位的对象. AbsolutePosition 设定元素的 position 属性为"absolute"(绝对). BackColor 设置或获取当前选中区的背景颜色. BlockDirLTR 目前尚未支持. BlockDirRTL 目前尚未支持. Bold 切换当前选中区的粗体显示与否. BrowseMode 目前尚未支持. Copy 将当前选中区复制到剪贴板. CreateBookmark 创建一
-
在RowCommand事件中获取索引值示例代码
在RowCommand事件中获取索引值 1.利用e.CommandSource 复制代码 代码如下: protected void lpg_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "ItemCollect") { GridViewRow gvr = (GridViewRow)(((LinkButton)(e.CommandSource)).NamingContainer);
-
pip 错误unused-command-line-argument-hard-error-in-future解决办法
在我的Mac Air上,用pip安装一些Python库时,偶尔就会遇到一些报错,关于"unused-command-line-argument-hard-error-in-future",错误如下: 复制代码 代码如下: cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-
-
ASP基础知识Command对象讲解
Coonamd 对象定义了将对数据源执行的命令,可以用于查询数据库表并返回一个记录集,也可以用于对数据库表进行添加.更改和删除操作. 一.使用Command 对象的步骤: 当在 ASP 页面中使用 Command 对象处理数据时,应首先设置命令类型.命令文本以及相关的活动数据库连接等,并通过 Parameter 对象传递命令参数,然后通过调用 Execute 方法来执行 SQL 语句或调用存储过程,以完成数据库记录的检索.添加.更改和删除任务.其步骤如下: 1.使用 ActiveCommand
-
C#命令模式(Command Pattern)实例教程
本文以实例形式讲述了C#命令模式的实现方法,分享给大家供大家参考.具体实现方法如下: 现假设想让遥控器控制电灯的开关.电视机的开关和切换,该如何做? 所有的开.关.切换都是遥控器发出的指令,把这些指令统一抽象成一个接口. public interface IControl { void Execute(); } 把电灯.电视机抽象成类. public class Tv { public void TurnOn() { Console.WriteLine("电视机打开了"); } pub
-
php设计模式 Command(命令模式)
<?php /** * 命令模式 * * 将一个请求封装为一个对象从而使你可用不同的请求对客户进行参数化,对请求排除或记录请求日志,以及支持可取消的操作 */ interface Command { public function execute(); } class Invoker { private $_command = array(); public function setCommand($command) { $this->_command[] = $command; } publ
-
GridView中动态设置CommandField是否可用或可见的小例子
复制代码 代码如下: protected void gvMaterial_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow || e.Row.RowType == DataControlRowType.Header) { e.Row.Cells[0].Vis
-
asp中command的在单条记录时,有些字段显示为空的问题
edit_rs_cmd.CommandText = "SELECT * FROM dbo.usertable WHERE id = ?" 这时候要把不能显示的字段,在放到sql中,显示出来 edit_rs_cmd.CommandText = "SELECT *,[不能显示的字段],[不能显示的字段], FROM dbo.usertable WHERE id = ?" 后来又找到的方法 edit_rs.Fields.Item("opentime")
-
ON_COMMAND_RANGE多个按钮响应一个函数的解决方法
本文描述了ON_COMMAND_RANGE多个按钮响应一个函数的解决方法. 开发人员需要注意在自定义消息响应函数的声明过程中,一定要注意参数的形式,稍微一疏忽就会导致莫须有的错误,具体以ON_COMMAND_RANGE为例说下. 1.声明消息响应函数:在要添加的工程上添加函数afx_msg void OnButtonPort(); 2.消息映射: BEGIN_MESSAGE_MAP(CXXXDlg, CDialog) //{{AFX_MSG_MAP(CXXXDlg) ON_WM_SYSCOMMA
-
javascript document.execCommand() 常用解析
2D-Position 允许通过拖曳移动绝对定位的对象. AbsolutePosition 设定元素的 position 属性为"absolute"(绝对). BackColor 设置或获取当前选中区的背景颜色. BlockDirLTR 目前尚未支持. BlockDirRTL 目前尚未支持. Bold 切换当前选中区的粗体显示与否. BrowseMode 目前尚未支持. Copy 将当前选中区复制到剪贴板. CreateBookmark 创建一个书签锚或获取当前选中区或插入点的书签锚的
-
asp.net gridview的Rowcommand命令中获取行索引的方法总结
一.通过命令源获取当前行索引. 方法比较多, GridView 的 Command 事件中无法象 DataGrid 那样直接获取行, 法1, GridViewRow drv = ((GridViewRow)(((Button)(e.CommandSource)).Parent.Parent));//CommandSource 引起事件的命令源,(疑问,根据MSDN说的是GridView,如果这样的话这样操作是错误的,但我得到的确实正确的,那说明得到的是BUtton控件,等待以后查证). drv.
-
获取Repeter的Item和ItemIndex/CommandArgument实现思路与代码
首先看看效果: Repeater控件,放在ItemTemplate内的铵钮OnClick之后,获取Repeater的Item,ItemIndex,CommandArgument,CommandName以及绑定的字段值. 准备数据: 复制代码 代码如下: View Code Imports Microsoft.VisualBasic Namespace Insus.NET Public Class Catalog Private _ID As Integer Private _Name As St
-
使用Jmail及Winwebmail发信时系统记录中的错误:502 Error: command ...
详细的错误信息如下: 发送邮件出错:发件人webmaster@58vip.com 收件人:webmaster@58vip.com信息:The message was undeliverable. All servers failed to receive the message ClientLogging enabled: Client Remote Address: 219.150.228.130 .execute() { Trying server mail:smtp.58vip.com <
-
解决VS2012 Express的There was a problem sending the command to the program问题
问题现象 安装Visual Studio 2012 Express之后,双击打开web.config文件时经常出现"There was a problem sending the command to the program"的错误,然后VS2012 Express打开了,但web.config文件没打开,需要再次双击web.config文件才能打开.很是烦人. 出现条件 问题出现在双击web.config文件时第一次启动VS2012 Express,如果VS2012 Express已
-
Delphi Command模式
这个例子还是比较好理解的, 所以只给出代码.unit pattern;interfaceuses Dialogs;type TAudioPlayer = class; TCommand = class public procedure execute; virtual; abstract; end; TPlayCommand = class(TCommand) private AudioPlayer: TAudioPlayer; public procedure
随机推荐
- JavaScript控制各种浏览器全屏模式的方法、属性和事件介绍
- 全面解析PHP面向对象的三大特征
- C++调试追踪class成员变量的方法
- Android编程实现3D旋转效果实例
- Ruby入门介绍第1/5页
- Windows Powershell使用哈希表
- 分享一下如何编写高效且优雅的 Python 代码
- Mac下mysql 5.7.13 安装配置方法图文教程
- ubuntu临时或永久修改hostname的方法
- jQuery ready()和onload的加载耗时分析
- jQuery中triggerHandler()方法用法实例
- 几个有用的unix命令快捷键整理
- php实现单链表的实例代码
- 解决安装WampServer时提示缺少msvcr110.dll文件的问题
- 易语言注入dll调用函数的方法
- Python实现制度转换(货币,温度,长度)
- 易语言取字节集数据转换为指定类型的数据
- element el-input directive数字进行控制
- Python中的CSV文件使用"with"语句的方式详解
- Django admin禁用编辑链接和添加删除操作详解