明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 816|回复: 7

[提问] autolisp如何操作mdb文件

[复制链接]
发表于 2023-9-10 16:05:40 | 显示全部楼层 |阅读模式
9明经币
这里有一个test.mdb文件

求写一个lsp文件读写test.mdb文件,如果有什么需要安装的驱动也一并告之

我的系统是win7 安装office2010
然后我在论坛里找了一些代码,但是好像都提示数据连接失败什么的,或者差了什么要安装。

附件: 您需要 登录 才可以下载或查看,没有账号?注册

最佳答案

查看完整内容

https://www.microsoft.com/zh-cn/download/details.aspx?id=13255
发表于 2023-9-10 16:05:41 | 显示全部楼层
回复

使用道具 举报

发表于 2023-9-10 16:10:40 | 显示全部楼层
据lisp操作数据库非常困难,如果想操作数据库最好选择其他语言。
回复

使用道具 举报

发表于 2023-9-10 18:19:46 来自手机 | 显示全部楼层
我以前等帖子有,有函数及读写增删字段示例
回复

使用道具 举报

发表于 2023-9-10 19:33:09 | 显示全部楼层
我用的是office2016,需要安装一个数据搜索引擎,可以到微软官网下载,至于lisp代码,论坛里面有现存的
回复

使用道具 举报

 楼主| 发表于 2023-9-10 21:17:34 | 显示全部楼层
lijiao 发表于 2023-9-10 19:33
我用的是office2016,需要安装一个数据搜索引擎,可以到微软官网下载,至于lisp代码,论坛里面有现存的

能帮我找你说的那个数据搜索引擎吗?
回复

使用道具 举报

 楼主| 发表于 2023-9-10 21:55:43 | 显示全部楼层
wzg356 发表于 2023-9-10 18:19
我以前等帖子有,有函数及读写增删字段示例

;打开数据库
;(DSQL_OPEN (getdb) "密码")
(defun DSQL_OPEN (ff kg / ConnectString)
        (if ff
                (progn
                        (setq ConnectString
                                (strcat "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
                                        ff "Persist Security Info=False")
                        )
                        (ADOLISP_ConnectToDB ConnectString "admin" kg);密码权限
                )
        )
);对象 or nil,每一次打开要与一次关闭对应




(DSQL_OPEN (getdb) "密码")
这上面的代码,试了N次,都是返回nil
回复

使用道具 举报

发表于 2023-9-11 08:53:31 | 显示全部楼层
本帖最后由 nxchenjk 于 2023-9-11 08:55 编辑

首先加载 ADOLISP_Library.lsp (论坛里有)
(setq mdbfile (getfiled "" "d:\\" "mdb" 8))  ;设置数据库名称并打开数据库
(setq ConnectString(strcat " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" mdbfile "; Persist Security Info=False"))
(setq MdbFile_Object(ADOLISP_ConnectToDB ConnectString "admin" ""))
;;取得指点条件的一行内容
(setq Line_1(cadr(ADOLISP_DoSQL MdbFile_Object(strcat "SELECT * FROM  [DX_LINE] Where 起点点号 = 'DX77' and 连接方向 ='DX70'"))))   
;表CJK中写入内容
(ADOLISP_DoSQL MdbFile_Object(strcat "INSERT INTO " "CJK"  " VALUES  (" (rtos NewId 2 0)  ",'2e',3)" ";"))
(ADOLISP_DisconnectFromDB MdbFile_Object)  ;关闭数据库
(setq MdbFile_Object nil)                  ;释放内存
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-17 04:53 , Processed in 0.152760 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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