[分享]WORD中的数据库操作(WORD-ADO-FOXPRO DBF)
时间:2005-06-14
来源:互联网
最近一直在研究一些数据库的问题,关于WORD如何通过ADO访问FOXPRO DBF文件的事,经笔者搜索与探索,将以下代码奉上,供后来者习之.
'* +++++++++++++++++++++++++++++'* Created By SHOUROU@ExcelHome 2005-6-14 8:08:47'仅测试于System: Windows NT Word: 9.0 Language: 2052'^The Code CopyIn [ThisDocument-ThisDocument]^''* -----------------------------Option Explicit'运行此代码前,请在VBE/工具/引用中勾选:Microsoft ActiveX Data Object 2.5 LibrarySub Example()Dim CNN As New ADODB.Connection, RST As New ADODB.RecordsetDim Stpath As String, strSQL As String, i As Integer, MyString As StringDim ConnStr As StringStpath = "D:\ShouRouTemp"'数据库路径目录,我们操作的对象是"D:\ShouRouTemp\MLC1021.DBF"文件'FoxBase的.DBF文件只相当于Access数据库的表,VBA把.DBF文件所在目录看作一个数据库(相当于.mdb),而该目录下的所有.DBF文件看做表ConnStr = "Driver=Microsoft Visual Foxpro Driver; UID=userID;SourceType=DBF;SourceDB=D:\SHOUROUTEMP"'打开指定数据库CNN.Open ConnStr'设置SQL查询条件,本例为选择MLC1021表中的所有字段strSQL = "SELECT * FROM MLC1021"'读取数据库的记录集RST.Open strSQL, CNN, adOpenKeyset, adLockOptimistic, adCmdTextWith RSTDo While Not .EOF'获取指定列字段的数据,并去除其中的空格MyString = MyString & Trim(.Fields("unit_tab_i")) & vbTab & Trim(.Fields("b02")) & vbCrLf.MoveNext'向下移动记录指针'Loop.Close'关闭数据表End WithSet RST = Nothing'释放对象Set CNN = Nothing'释放对象Selection.InsertAfter MyString'将文本插入End Sub'----------------------以上代码在WORD 2000中通过.
作者: 守柔 发布时间: 2005-06-14
太高深,不过还是拷下来!谢了!
高手,就是高手!
作者: konggs 发布时间: 2005-06-14
我又要来给老大沷冷水了,数据库如果与EXCEL进行转换还是挺管用的,但和WROD进行链接是否有点。。。。。了
当然,对于特殊的用户,这是必需的(类似于邮件合并那样),但对于大多数用户,这个东东是否有些“超现实”?
作者: sdbbsdbb 发布时间: 2005-06-14
楼上,数据库与WROD进行链接是很的意义的东东,不像你想的那样只是邮件合并!!!
不过还是要给守柔兄提点建议——VF现在还有必要学吗?小不如Access大不如SQL,所以现在的*.NET中没有它的地盘!
守柔兄,不Access就SQL吧!
作者: 七叶一枝梅 发布时间: 2005-06-14
那楼上能否介绍一下这种WORD与数据库进行连接的实际应用?
我接触的东东并不广,因此视野。。。。。。
盼复
作者: sdbbsdbb 发布时间: 2005-06-15
回“山地步兵” 楼上:
比如说:从题库(数据库)随机抽题,在word中生成试卷;
再比如说:文档的分类存档等……
作者: 七叶一枝梅 发布时间: 2005-06-18
我认为,斑竹提供的是方法,不一定要用fox,可以用 odbc 这样什么数据都可以读。
有一点疑问“Selection.InsertAfter MyString'将文本插入 “。插入的位置在那。在word 中没有 excel 那样的坐标可以控制写入位置。我个人理解,是在光标处,如果有很多数据,如果写入到各自的位置。请斑竹指点,谢谢!
作者: scorpoin 发布时间: 2005-06-18
作者: zzl 发布时间: 2005-06-18
学到用时方恨少,五天前我还在泼老大冷水,五天后我得向老大求教如何将DBF文件转化为其他格式了(不是用系统提供,而是用VBA).
真该打自己一巴掌
作者: sdbbsdbbsd 发布时间: 2005-06-18
很有用.我用准备用他做题库
作者: dzdoc 发布时间: 2005-06-18
作者: chenwintek 发布时间: 2005-06-18
作者: yz1978 发布时间: 2005-07-04
作者: llsshh 发布时间: 2005-07-29
刚才仔细研究了守柔版主的文章,真是启发不小啊!请允许我班门弄斧,把自己的体会写下来,希望大家指正。
如果要和SQL连,需要在-“工具”-“引用”-选中“Microsoft ActiveX Data Objects 2.8 Library”和“Microsoft ActiveX Data Objects RecordSet 2.8 Library”,还要改一下ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=**;Initial Catalog=**;Data Source=**",当然在**处修改成自己的数据库就行了。
我只测试了与SQL的连接,相信版主的代码可以和很多数据库相连!
再一次感谢守柔版主!真的很佩服您的学识和精神!
作者: llsshh 发布时间: 2005-07-29
作者: hangye 发布时间: 2011-06-12
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28