autolisp 与数据库连接
不知道,那位大虾指导我autolisp与数据库连接能不能行。使用vlisp可以利用ado接口连接。具体可以参考相关的书籍。相关函数vlax-create-obj
使用vlisp可以利用ado接口连接。具体可以参考相关的书籍。相关函数vlax-create-object如内...
本帖最后由 mccad 于 2003-1-13 21:11:52 编辑通过类型库初始化ADO接口方法:
(defun DbInitADO ( / ADO_DLLPath)
(if (null adom-Append)
(progn
;; 尽管你可以把绝对路径输入到这里,但利用系统查找到的系统
;; 文件夹将会更加合理,可以避免不必要的错误。
(setq ADO_DLLPath
(strcat (getenv "systemdrive")
"\\Program Files\\Common Files\\System\\Ado\\")
)
;; 如果查找到类型库 ...
(if (findfile (strcat ADO_DLLPath "msado15.dll"))
;; 将其输入
(vlax-Import-Type-Library
:tlb-filename (strcat ADO_DLLPath "msado15.dll")
:methods-prefix "adom-"
:properties-prefix "adop-"
:constants-prefix"adok-"
)
;; 找不到时,则通知操作者
(alert (strcat "不能找到以下文件\n" ADO_DLLPath "msado15.dll"))
)
)
)
)
生成MS-Access 或 MS-SQL Server 数据库的连接字符串
;;;******************************************************************
;;; 使用ODBC(不需要DSN)连接MS-Access数据库
;;; 示例: (DbConnect_MSAccess1 "d:/dbfiles/products.mdb")
;;;******************************************************************
(defun DbConnect_MSAccess1 (dbFile)
(strcat
"Provider=MSDASQL;"
"Driver={Microsoft Access Driver (*.mdb)};"
"DBQ=" dbFile
)
)
;;;******************************************************************
;;; 使用JET 3.51连接MS-Access数据库
;;; 示例: (DbConnect_MSAccess2 "d:/dbfiles/products.mdb")
;;;******************************************************************
(defun DbConnect_MSAccess2 (dbFile)
(strcat
"Provider=Microsoft.Jet.OLEDB.3.51;"
"Data Source=" dbFile
)
)
;;;******************************************************************
;;; 使用ODBC(不需要DSN)连接MS-SQL数据库
;;; 示例: (DbConnect_MSSQL1 "SQLSERVER1" "products" "sa" "")
;;;******************************************************************
(defun DbConnect_MSSQL1 (dbServer dbName dbUser dbPassword)
(strcat
"Provider=SQLOLEDB;"
"Driver={SQL Server};"
"Server=" dbServer ";"
"Database=" dbName ";"
"UID=" dbUser ";"
"PWD=" dbPassword
)
)
;;;******************************************************************
;;; 使用ODBC连接MS-SQL数据库w/o
;;; Ex. (DbConnect_MSSQL2 "SQLSERVER2" "pr_catalog1" "sa" "")
;;;******************************************************************
(defun DbConnect_MSSQL2 (dbServer dbCatalog dbUser dbPassword)
(strcat
"Provider=SQLOLEDB;"
"Data Source=" dbServer ";"
"Initial Catalog=" dbCatalog ";"
"User ID=" dbUser ";"
"Password=" dbPassword
)
)
全文见二次开发栏目的最新更新文章。
我也给点资料…
谢谢各位大虾,戴我研究研究。
但不知道具体的检索,更新,插入,删除怎样实现。
页:
[1]