本帖最后由 cxm23 于 2012-6-6 19:11 编辑 $mdb_data_path = @ScriptDir & "\db1.mdb"
$mdb = ObjCreate("ADODB.Connection")
$mdb.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & $mdb_data_path)
$oMyError = ObjEvent("AutoIt.Error","MyErrFunc") ; 建立客户错误处理程序
$sql0 = "DROP TABLE TempTable"
$sql1 = "CREATE TABLE TempTable(序号 AUTOINCREMENT(1,1), 姓名 text(255),年龄 text(255))"
$sql2 = "INSERT INTO TempTable(姓名,年龄) SELECT 姓名,年龄 FROM table1 WHERE 姓名 LIKE '*陈*'"
$sql3 = "INSERT INTO TempTable(姓名,年龄) VALUES('张20','60')"
ClipPut($sql2)
$mdb.Execute($sql0)
$mdb.Execute($sql1)
;~ $mdb.Execute($sql2)
$mdb.Execute($sql3)
;~ $RS.Close
$mdb.Close
Func MyErrFunc()
$HexNumber=hex($oMyError.number,8)
Msgbox(0,"","截获一个 COM 错误 !" & @CRLF & _
"错误代码: " & $HexNumber & @CRLF & _
"错误名称: " & $oMyError.source & @CRLF & _
"错误名称: " & $oMyError.helpfile & @CRLF & _
"错误名称: " & $oMyError.scriptline & @CRLF & _
"错误描述: " & $oMyError.description )
$g_eventerror = 1 ; 函数返回
Endfunc
通过AU3执行INSERT INTO 命令,为什么插入一条可以(代码中的$sql3 ),插入多条(代码中的$sql2)就失败呢,$sql2直接在ACCESS中执行是没问题的
|