设为首页收藏本站

晓东CAD家园-论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 307|回复: 4

[原创] Lisp通过Activex方式操作Sqlite数据库

[复制链接]
发表于 2020-1-13 21:15:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击此处下载

查看状态:需购买或无权限

您的用户组是:游客

文件名称:Activex模式.rar 
下载次数:37  文件大小:441.7 KB 
下载权限: 不限 以上  [免费赚D豆]



使用前请使用鼠标右键以管理员权限运行一次Act_SqLite.exe
  1.   
  2. (defun $DO-SQL-sqlite-act$ (lst / db-path sql app STR)
  3.                                         ;OpenDb开启db库
  4.                                         ;runsql运行 sql语句
  5.                                         ;GetDataBySql获取执行结果返回值
  6.                                         ;CloseDb关闭数据库
  7.   (setq db-path (cdr (assoc "数据库路径" lst)))
  8.   (if (and db-path (findfile db-path))
  9.     (progn
  10.       (setq sql (cdr (assoc "SQL语句" lst)))
  11.       (if (and sql (= (type sql) 'str))
  12.         (progn
  13.           (SETQ app (vlax-create-object "Act_SqLite5.Class1"))
  14.                                         ;提前手动双击一次exe
  15.           (vlax-invoke app 'OpenDb db-path)
  16.           (vlax-invoke app 'runsql sql)
  17.           (SETQ STR (vlax-invoke app 'GetDataBySql sql))
  18.           (vlax-invoke app 'CloseDb)
  19.           (vl-catch-all-apply 'vlax-release-object (LIST app))
  20.         )
  21.       )
  22.     )
  23.   )
  24.   str
  25. )




调用示例:
  1.   
  2. ($DO-SQL-sqlite-act$
  3.     (list (cons        "数据库路径"
  4.                 "C:\\Changli_harness_software\\SERVER\\zxcad.db"
  5.           )
  6.           (cons "SQL语句" "PRAGMA table_info('连接器')")
  7.     )
  8.   )


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 3个

财富等级: 恭喜发财

发表于 2020-1-14 08:45:35 | 显示全部楼层
楼主好厉害,操作sqlite都能做到,lisp还真是无所不能
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2913个

财富等级: 家财万贯

发表于 2020-1-15 00:03:24 | 显示全部楼层
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2020-2-20 07:53:25 | 显示全部楼层
谢谢楼主的分享
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2020-3-19 09:17:30 | 显示全部楼层
缺了一个反注册Act_SqLite.exe功能,比如原来Act_SqLite.exe在c:/111,改为d:/222后,运行Act_SqLite.exe后,注册表里都无法改为新的d:/222。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )  

GMT+8, 2020-8-13 11:00 , Processed in 0.133912 second(s), 44 queries , Gzip On, WinCache On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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