乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 41|回复: 2

读取和写入Access 2007(accdb文件)

[复制链接]

58

主题

3353

帖子

33

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1761
发表于 2008-11-20 12:17:18 | 显示全部楼层 |阅读模式
我通常不要求施舍...但今天我是.是否有人有一些示例代码(最好是vbs)来打开数据库,从特定列中读取单元格,并将图像附加到另一个单元格(图像名称对应于读取的第一个单元格)?
这看起来像是我需要走的方向,但我通常很迷茫:丑陋:在lisp语言之外。
http://msdn.microsoft.com/en-us/library/bb257442.aspx
任何帮助将不胜感激。
*附例...需要从结构ID列中读取数据,并使用回形针图标将照片附加到最后一列。
谢谢,
罗恩

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

26

主题

275

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
379
发表于 2008-11-20 14:03:14 | 显示全部楼层
如果你愿意,你可以把它拆开。我使用DAO链接到数据库。
  1. Option Explicit
  2.     Public Tatts As Variant
  3.     Public ssnew_is As Object
  4.     Const DATABASE_DIR = "q:\std\drafting_db"
  5.     Dim db As DAO.Database
  6. Sub CaddReq()
  7.   Dim Projdia As String
  8.   Dim Caddr As String
  9.   Dim Filenm As String
  10.   Dim EntGrp(0) As Integer
  11.   Dim EntPrp(0) As Variant
  12.   Dim BlkObj As Object
  13.   Dim Pt1(0) As Double
  14.   Dim Pt2(0) As Double
  15.   Dim objSelSet As AcadSelectionSet
  16.   Dim objSelCol As AcadSelectionSets
  17.     Set objSelCol = ThisDrawing.SelectionSets
  18.     For Each objSelSet In objSelCol
  19.         If objSelSet.Name = "db4_block" Then
  20.             objSelSet.Delete
  21.             Exit For
  22.         End If
  23.     Next
  24.     Call str_test
  25.     Set ssnew_is = ThisDrawing.SelectionSets.Add("db4_block")
  26.     EntGrp(0) = 2
  27.     EntPrp(0) = "drafting_db_block"
  28.     ssnew_is.Select acSelectionSetAll, Pt1, Pt2, EntGrp, EntPrp
  29.     If ssnew_is.Count >= 1 Then
  30.     Call cadreq_str
  31.         Tatts = ssnew_is.Item(0).GetAttributes
  32.         Filenm = (LTrim(Tatts(2).TextString))
  33.     Set db = DAO.OpenDatabase(DATABASE_DIR & "drafting_db_oldver.mdb", False, False)
  34.     Dim rs As DAO.Recordset
  35.         Set rs = db.OpenRecordset( _
  36.         "SELECT * FROM CaddReqTrack WHERE File_Path = '" _
  37.         & D_path & "' AND FileName = '" & Filenm & "' AND Cadd_Req = '" & cad_req & "'")
  38.     If (rs.RecordCount > 0) Then
  39.         rs.Edit
  40.         rs.Fields("Drawing_Name") = (LTrim(Tatts(3).TextString))
  41.         rs.Fields("Station") = (LTrim(Tatts(4).TextString))
  42.         rs.Fields("Location") = (LTrim(Tatts(5).TextString))
  43.         rs.Fields("Description") = (LTrim(Tatts(6).TextString))
  44.         rs.Fields("Dwg_Scale") = (LTrim(Tatts(7).TextString))
  45.         rs.Fields("Rev_CE") = (LTrim(Tatts(8).TextString))
  46.         rs.Fields("Date_CE") = (LTrim(Tatts(9).TextString))
  47.         rs.Fields("Rev_Desc_CE") = (LTrim(Tatts(10).TextString))
  48.         rs.Fields("Drawn_By_CE") = (LTrim(Tatts(11).TextString))
  49.         rs.Fields("Eng_By_CE") = (LTrim(Tatts(12).TextString))
  50.         rs.Fields("Rev_GE") = (LTrim(Tatts(13).TextString))
  51.         rs.Fields("Date_GE") = (LTrim(Tatts(14).TextString))
  52.         rs.Fields("Rev_Desc_GE") = (LTrim(Tatts(15).TextString))
  53.         rs.Fields("Drawn_By_GE") = (LTrim(Tatts(16).TextString))
  54.         rs.Fields("Eng_By_GE") = (LTrim(Tatts(17).TextString))
  55.         rs.Fields("D_Code") = (LTrim(Tatts(18).TextString))
  56.         rs.Fields("S_Code") = (LTrim(Tatts(19).TextString))
  57.         rs.Update
  58.     Else
  59.         rs.AddNew
  60.         rs.Fields("Cadd_Req") = cad_req
  61.         rs.Fields("Filename") = (LTrim(Tatts(2).TextString))
  62.         rs.Fields("Drawing_Name") = (LTrim(Tatts(3).TextString))
  63.         rs.Fields("Station") = (LTrim(Tatts(4).TextString))
  64.         rs.Fields("Location") = (LTrim(Tatts(5).TextString))
  65.         rs.Fields("Description") = (LTrim(Tatts(6).TextString))
  66.         rs.Fields("Dwg_Scale") = (LTrim(Tatts(7).TextString))
  67.         rs.Fields("Rev_CE") = (LTrim(Tatts(8).TextString))
  68.         rs.Fields("Date_CE") = (LTrim(Tatts(9).TextString))
  69.         rs.Fields("Rev_Desc_CE") = (LTrim(Tatts(10).TextString))
  70.         rs.Fields("Drawn_By_CE") = (LTrim(Tatts(11).TextString))
  71.         rs.Fields("Eng_By_CE") = (LTrim(Tatts(12).TextString))
  72.         rs.Fields("Rev_GE") = (LTrim(Tatts(13).TextString))
  73.         rs.Fields("Date_GE") = (LTrim(Tatts(14).TextString))
  74.         rs.Fields("Rev_Desc_GE") = (LTrim(Tatts(15).TextString))
  75.         rs.Fields("Drawn_By_GE") = (LTrim(Tatts(16).TextString))
  76.         rs.Fields("Eng_By_GE") = (LTrim(Tatts(17).TextString))
  77.         rs.Fields("D_Code") = (LTrim(Tatts(18).TextString))
  78.         rs.Fields("S_Code") = (LTrim(Tatts(19).TextString))
  79.         rs.Fields("File_Path") = D_path
  80.         rs.Update
  81.     End If
  82.     rs.Close
  83.     Set rs = Nothing
  84.     db.Close
  85.     Set db = Nothing
  86.     ThisDrawing.PurgeAll
  87.     End If
  88. End Sub

回复

使用道具 举报

58

主题

3353

帖子

33

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1761
发表于 2008-11-20 15:29:44 | 显示全部楼层
谢谢...我去看看。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-3 16:59 , Processed in 1.131451 second(s), 63 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表