找回密码
 加入
搜索
查看: 3050|回复: 4

[AU3基础] 怎样在mssql中实现批量插入记录?

[复制链接]
发表于 2010-6-27 11:37:23 | 显示全部楼层 |阅读模式
想通过变量写入和for循环进行批量写入记录,
$Err = ObjEvent("AutoIt.Error", "ODBCJET_ErroHandler") ;定义一个函数ODBCJET_ErroHandler收集对象的错误
$Name = 122
$IP = 121
$port = 123123
Dim $sServer = '127.0.0.1', $sUsername = 'sa', $sPassword = '' ;三个变量分别是连接数据库用的地址、账号、密码
$Conn = ObjCreate("ADODB.Connection");首先要建立ADODB.Connection类
$Conn.open("DRIVER={SQL Server};SERVER=" & $sServer & ";UID=" & $sUsername & ";PWD=" & $sPassword & ";");使用open方法连接数据库
If @error Then Exit
;如果程序没有退出,说明成功连接上了数据库

;连接成功后我们来读取数据
$Conn.Execute("use A") ;首先要指定一个需要操作的库,这里用系统自带的master库来操作
$RS = ObjCreate("ADODB.Recordset");创建记录集对象
$RS.ActiveConnection = $conn;设置记录集的激活链接属性来自$Conn
$conn.Execute("insert into table1 (Name,Ip,Port) values ('"&$Name&"','"&$Ip&"','"&$Port&"')");
但是想通过for循环实现批量插入、还没实现,请高手帮忙。
发表于 2010-6-27 11:49:08 | 显示全部楼层
for XXXXXXXXXXXXXXXXXXXXXX
$conn.Execute("insert into table1 (Name,Ip,Port) values ('"&$Name&"','"&$Ip&"','"&$Port&"')");
next
 楼主| 发表于 2010-6-27 13:05:50 | 显示全部楼层
本帖最后由 howie530_8 于 2010-6-27 13:21 编辑

回复 2# 大绯狼
# $Name = int(" $i ")
# $IP = int(" $i ")
# $port = int(" $i ")
For $i = 5 to 1 Step -1
$conn.Execute("insert into table1 (Name,Ip,Port) values ('"&$Name&"','"&$Ip&"','"&$Port&"')")
Next
这样可以实现了、返回值都是0,怎样让返回的列值为相应的 $i (依次为5,4,3,2,1)
 楼主| 发表于 2010-6-29 19:37:16 | 显示全部楼层
回复 3# howie530_8


    呼叫Afan和大绯狼
发表于 2010-6-29 19:39:13 | 显示全部楼层
回复 4# howie530_8


    不用呼叫我,我只是个过客…… (数据库没瞄过一眼)
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-20 20:16 , Processed in 0.079791 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表