因为我是单机的,没有建SQL Server,
现给你来一个简单的操作ACCESS的吧,
只有 Select 查询,我没有做Insert,Update等,那个东西再用 Execute 就可以了
你自己把ConnectionString给改一下就可以了
希望能起到抛砖引玉的作用 ^_^
;; FileName 为MDB的文件名字 "D:\\NETSEND.MDB" . ;; TableName 为Table的名字 "Name" . ;; AutoCAD2005+msado15 . ;; 此文件为我程序中的一个子函数,故此处未做各种环境的设定 . (Defun HuaiYu_GetlstFromMDB (FileName TableName / myCn myRs strCon lstName Fields fCount rCount loop rCount item i) ;FileName TableName (VL-LOAD-COM) (setq myCn (vlax-create-object "ADODB.Connection")) (setq myRs (vlax-create-object "ADODB.Recordset")) (setq strCon (strcat "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" FileName "ersist Security Info=False")) (vlax-invoke-method myCn "Open" strCon userID userPassword fds) (vlax-invoke-method myRs "Open" (strcat "select * from " TableName) myCn 1 1 -1) (vlax-invoke-method myRs "moveFirst") (setq lstName '()) (setq Fields (vlax-get-property myRs "Fields") fCount (vlax-get-property Fields "Count") rCount (vlax-get-property myRs "RecordCount") ) (setq loop T) (repeat rCount (setq item '() i 0 ) (repeat fCount (setq name (vlax-get-property Fields "item" (vlax-make-variant i))) (setq item (cons (vlax-variant-value (vla-get-value name)) item)) (setq i (1+ i)) ) (setq lstName (cons (reverse item) lstName)) (vlax-invoke-method myRs "moveNext") ) (reverse lstName) )
|