网络编程
位置:首页>> 网络编程>> Asp编程>> asp的command对象的使用

asp的command对象的使用

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

标签:command,对象,asp

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

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com