找回密码
 加入
搜索
查看: 2156|回复: 2

[AU3基础] 如何批量修改数据库的某一字段值

[复制链接]
发表于 2011-10-3 08:45:41 | 显示全部楼层 |阅读模式
下面是数据库中已有的数据...已经显示在LISTVIEW上了

单位  金额  货款  备注
医院  10     未付  无
医院  20     未付  无
医院  30     未付  无
医院  40     未付  无
医院  50     未付  无
医院  60     未付  无
医院  70     未付  无
医院  80     未付  无

如何批量修改: 货款=未付,修改为货款=已付
Func sg()
        $okoki = MsgBox(1 + 32 + 256 + 262144, "提示", "是否真的要修改此数据")
        If $okoki = 1 Then
                ;Global $_Quantity[100], $_File_INI, $_ID
                $Strn = GUICtrlRead(GUICtrlRead($ListView1))
                $Strnspin = StringSplit($Strn, "|")
                ;MsgBox(0+262144,"",$strn)
                ;$_FileId = FileOpenDialog('选择客户数据,不得超过100个文件',@DesktopDir & '/客户信息',"配置文件 (*.Ini;*.Txt)",1,"",$Form1)
                $a = GUICtrlRead($name1)
                $b = GUICtrlRead($tipe1)
                $c = GUICtrlRead($cdkey1)
                $d = GUICtrlRead($time1)
                $e = GUICtrlRead($gmdate1)
                $f = GUICtrlRead($fxdate1)
                $g = GUICtrlRead($fxs1)
                $h = GUICtrlRead($pc1)
                $I = GUICtrlRead($gz1)
                $n = GUICtrlRead($fh1)
                $k = GUICtrlRead($cpu1)
                $_SQL = "品名 = '" & $a & "',类型 = '" & $b & "' ,产品序列号 = '" & $c & "',保修期 = '" & $d & "',购买日期 = '" & $e & "',返修日期 = '" & $f & "',返修商 = '" & $g & "',客户 = '" & $h & "',故障 = '" & $I & "',状态 = '" & $n & "',处理方法 = '" & $k
                ;MsgBox(0 + 262144, "", $Strn & @CRLF & $_SQL)
                
                $addfld = ObjCreate("ADODB.Connection")
                $addfld.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & $mdb)
                $sQuery = "update " & $Table & " set " & $_SQL & "' WHERE ID" & " = " & $Strnspin[1]
                ;MsgBox(0,"",$sQuery)
                $addfld.execute($sQuery)
                $addfld.close
                ;MsgBox(4096, "提示:",$Strnspin[1]&"    更新成功!!!")
                MsgBox(0 + 262144, "完成", "修改数据成功")
                dumdb()
                ;udb()
                enid()
                
        Else
                GUISwitch($Form1)
                enid()
        EndIf
EndFunc   ;==>sg
这是单个修改的.......如果是1000条一样的数据要修改.不点死了呀......
发表于 2011-10-3 10:48:02 | 显示全部楼层
那不是要用SQL的语句修改吗?或是用一个FOR语句,批量的修改
发表于 2011-10-14 17:24:51 | 显示全部楼层
个人觉得用脚本模拟操作比较天然
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-20 23:33 , Processed in 0.078704 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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