asp的command对象的使用

作者:亮亮 来源:亮亮博客 时间:2008-06-23 13:03:00 

1.创建数据库连接,并打开

set cnn=Server.CreateObject("ADODB.Connection")
  cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("test.mdb")
  cnn.Open

2.创建command

set cmd=Server.CreateObject("ADODB.Command")
  set cmd.ActiveConnection=cnn

3.设置CommandType类型,并设置执行语句即CommandText
  说明:

    adCmdText=1 :表示处理的是一个 SQL 语句;
    adCmdTable=2 :表示处理的是一个表;
    adCmdStoredProc=4 :表示处理的是一个存储过程;
    adCmdUnknow=8 :表示不能识别,它是默认值。
  commandText根据commandTyped的类型为SOL 语句、表名称或存储过程
cmd.CommandType=1
  cmd.CommandText="Insert INTO test(userName,userPass,userEmail,clicks) values(?,?,?,?)"
  cmd.Prepared = true

对prepared的说明:Prepared 属性可返回或设置一个布尔值,如果设置为 True,则指示该命令应该保存查询的 一个准备好的(或已编译的)版本, 该查询是第一次执行 Command 对象前在 CommandText 属性中指定的。

这会降低命令的首次执行速度,但是在第一次执行执行后,provider 将使用已编译的版本,这样就可以加快执行速度。

如果该属性为 False,提供者将直接执行 Command 对象而不创建编译版本。

如果提供者不支持命令准备,则一旦将此属性设置为 True,提供者便可能返回错误。如果它不返回错误,则仅忽略准备命令的请求,并将 Prepared 属性设置为 False。

当然可不设置cmd.Prepared = true或cmd.Prepared = false

4.创建Parameter对象

说明:

  Set objparameter=objcommand.CreateParameter(name,type,direction,size,value)
  name Parameter 对象的名称,和数据库字段对应
  type Parameter 对象的数据类型,可以使用符号常量为其赋值
     adDate=7 :表示日期值;
     adInteger=3 :表示4字节的带符号整数;
     adDecimal=14 :具有固定精度和范围的精确数字值;
     adDouble=5 :双精度浮点值;
     adVarChar=200 :表示字符串值。
  direction Parameter对象的方向,可以设置或返回以下某个值
     adParamInput=1 :指定为输入参数(默认值);
     adParamOutput=2 :指定为输出参数;
     adParamInputOutput=3 :指定为输入和输出参数;
     adParamReturnValue=4 :指定为返回值。
  Size 指定参数值最大长度,以字符或字节数为单位。
  Value 指定 Parameter 对象的值。
set un=cmd.CreateParameter("userName",200,1,50,"ljlyy")
  set up=cmd.CreateParameter("userPass",200,1,50,"123456")
  set ue=cmd.CreateParameter("userEmail",200,1,50,"ljlyfsdy@126.com")
  set uc=cmd.CreateParameter("clicks",14,1,1,"30")

5.将parameter对象添加到Parameters集合中。

cmd.Parameters.Append un
  cmd.Parameters.Append up
  Cmd.Parameters.Append ue
  Cmd.Parameters.Append uc

当然,在4,5的步骤中你也可以这样写

set un=cmd.CreateParameter("userName",200,1,50)
  set up=cmd.CreateParameter("userPass",200,1,50)
  set ue=cmd.CreateParameter("userEmail",200,1,50)
  set uc=cmd.CreateParameter("clicks",14,1,2)
  cmd.Parameters.Append un
  cmd.Parameters.Append up
  cmd.Parameters.Append ue
  cmd.Parameters.Append uc
  un.value="ljlyy"
  up.value="123456"
  ue.value="ufngyfsdy@126.com"
  uc.value="30"

6.执行

 cmd.Execute
   set cmd=nothing
   cnn.close
   set cnn=nothing

当然,若CommandText为普通的sql语句,没有输入输出参数,4,5的步骤可以省略。并且若cmd返回的是记录集,在执行的时候可以直接set rs=cmd.Execute

标签:command,对象,asp
0
投稿

猜你喜欢

  • SQL Server 安全检查列表全攻略

    2008-01-29 13:31:00
  • 双屏显示提升前端开发10%工作效率

    2009-03-16 18:22:00
  • 常用SQL语句词典

    2008-08-03 17:19:00
  • IE9报“DOM Exception: INVALID_CHARACTER_ERR (5)”错误的原因及解决办法

    2011-09-01 19:11:07
  • 用server.transfer隐藏网页真实地址

    2007-12-04 13:02:00
  • 教你如何利用SQL Server保护数据

    2010-06-07 14:18:00
  • css中如何使div居中(垂直水平居中)

    2007-08-13 08:17:00
  • asp如何制作一个文本文件编辑器?

    2010-07-07 12:26:00
  • JS中模拟函数重载

    2008-01-03 16:46:00
  • 谈点关于checkbox的事情

    2010-09-28 14:49:00
  • 一个ASP记录集分页显示的例子

    2007-09-14 10:57:00
  • 如何利用SQL Server 2005中的模板参数

    2009-01-23 15:02:00
  • MenuEverywhere 程序图标设计

    2011-08-14 06:57:23
  • sqlserver 触发器实例代码

    2012-01-29 18:30:45
  • 谈谈CSS样式表的命名规范

    2007-10-08 12:41:00
  • SQL Server 2005 五个动态管理对象

    2008-12-18 14:50:00
  • ASP申请单动态添加实现方法及代码

    2008-11-04 11:09:00
  • 深入分析SQL Server的数据转换服务

    2008-11-28 15:29:00
  • 轻松掌握 SQL Server 2000数据库的构架

    2009-02-05 15:50:00
  • 楼层数横排比竖排好

    2008-04-26 07:28:00
  • asp之家 网络编程 m.aspxhome.com