找回密码
 加入
搜索
查看: 1391|回复: 1

[AU3基础] 请教AU3如何使用adodb读取Access数据库指定表中的列名[已解决]

[复制链接]
发表于 2012-1-15 19:42:28 | 显示全部楼层 |阅读模式
本帖最后由 tsys 于 2012-1-15 23:47 编辑

如题,附上创建数据库的代码,希望能用adodb读取$tblname表中的 每个列名, 目的是为了避免以后在创建列的时候与数据库中已存在列名发生冲突造成不必要的错误,从论坛上下载了adodb的学习文档,看过后发现和VBScript的对象一样难学,远水解不了近渴,虚心求教,忘论坛朋友正面回答.
下面附上创建数据库,表和列的代码:
new()
Func new()
                Local $mdb_data_path=@ScriptDir&"\DB0.mdb"
                Local $mdb_data_pwd="test"
                Local $tblname="Control" 
                
        $newMdb = ObjCreate('ADOX.Catalog')
        $newMdb.Create("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & $mdb_data_path & ";Jet Oledb:Database Password=" & $mdb_data_pwd)
        $newmdb.ActiveConnection.Close;建数据库
        $addtbl = ObjCreate("ADODB.Connection")
        $addTbl.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & $mdb_data_path & ";Jet Oledb:Database Password=" & $mdb_data_pwd)
        $addTbl.Execute("CREATE TABLE " & $tblname)
        $addtbl.Close;建表
        $addfld = ObjCreate("ADODB.Connection")
        $addfld.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & $mdb_data_path & ";Jet Oledb:Database Password=" & $mdb_data_pwd)
        $addfld.Execute("ALTER TABLE " & $tblname & " ADD id identity(1, 1) primary key,name text(255) ,ssex text(50),qq int");id identity(1, 1) primary key为自动编号和主键
        $addfld.Close;建列表名
        MsgBox(0,'提示:','创建成功!!!')
EndFunc
 楼主| 发表于 2012-1-15 23:47:26 | 显示全部楼层
换个思路解决了,如果数据库中存在与当前创建的列名相同,au3会提示 请求动作失败(请求于对象), 别忘了AU3还有objevent,遇到此类问题的朋友,用ObjEvent("AutoIt.Error","MyErrFunc") 自定义一个函数处理这个错误就可以了
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-10-1 01:27 , Processed in 0.075476 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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