<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      ACCESS 導出附件

      需求: 

        把登陸窗體中的圖片,替換為數據表中的圖片.

      思路: 

        1.把圖片保存到本地

        2.修改圖片控件的圖片路徑

      難點:

        1.對附件的操作方法不熟練

        2.不同的數據庫操作方法有差異

      主要用到的方法:

      Field2.SaveToFile 方法 (DAO)

       

      效果(左側圖片的變化):

      原窗體:

      image

       

      載入表中圖片后的效果:

      image

       數據表設計:

      image

       

      實現代碼:

      版本一.如果圖片在本地數據庫(不屬于外鏈表)

      ' 設置登錄界面圖片的子程序
      Sub SetLoginPic()
          ' 定義變量:
          ' rst - 用于操作tblsystemsetting表的記錄集
          ' rsA - 用于操作附件字段的記錄集
          ' fld - 用于表示附件字段
          ' strFullPath - 存儲臨時文件完整路徑的字符串
          Dim rst As DAO.Recordset2
          Dim rsA As DAO.Recordset2
          Dim fld As DAO.Field2
          Dim strFullPath As String
          
          ' 打開系統設置表,注意CurrentDB是本地數據.
          Set rst = CurrentDb.OpenRecordset("tblsystemsetting")
          ' 獲取附件字段
          Set fld = rst("Attachments")
          
          ' 檢查記錄集是否為空
          If Not rst.EOF Then
              ' 打開附件字段中的記錄集
              Set rsA = fld.value
              
              ' 檢查附件記錄集是否為空
              If Not rsA.EOF Then
                  ' 構建臨時文件路徑:系統臨時文件夾 + 附件文件名
                  strFullPath = VBA.Environ("TEMP") & "\" & rsA("FileName")
                  
                  ' 忽略錯誤(如果臨時文件已存在)
                  On Error Resume Next
                  ' 刪除可能已存在的臨時文件
                  Kill strFullPath
                  
                  ' 將附件中的文件數據保存到臨時文件
                  rsA("FileData").SaveToFile strFullPath
                  ' 將圖片控件Image57的圖片設置為臨時文件
                  Me.Image57.Picture = strFullPath
              End If
              
              rsA.Close
          End If        
      
          rst.Close
              
          ' 釋放對象變量
          Set fld = Nothing
          Set rsA = Nothing
          Set rst = Nothing
      End Sub

      版本二.圖片在其他數據庫

      Sub SetLoginPic(ByVal DBPath As String)
          Dim rst As DAO.Recordset2
          Dim rsA As DAO.Recordset2
          Dim fld As DAO.Field2
          Dim strFullPath As String
          Dim dbExternal As DAO.Database
          Dim strConnect As String
          
          ' 關鍵1:構建加密數據庫連接字符串(注意密碼暴露風險)
          strConnect = ";Database=" & DBPath & ";PWD=數據庫密碼"
          
          ' 關鍵2:靜默打開外部數據庫(不顯示獨占/只讀提示)
          Set dbExternal = DBEngine.Workspaces(0).OpenDatabase("", False, False, strConnect)
          
          ' 關鍵3:從外部庫讀取系統設置表
          Set rst = dbExternal.OpenRecordset("tblsystemsetting")
          Set fld = rst("Attachments")
          
          If Not rst.EOF Then
              Set rsA = fld.value
              If Not rsA.EOF Then
                  ' 關鍵4:將附件圖片提取到臨時目錄
                  strFullPath = VBA.Environ("TEMP") & "\" & rsA("FileName")
                  On Error Resume Next
                  Kill strFullPath  ' 強制覆蓋舊文件
                  rsA("FileData").SaveToFile strFullPath
                  
                  ' 核心功能:設置窗體圖片
                  Me.Image57.Picture = strFullPath
              End If
              rsA.Close
          End If
          
          ' 關鍵5:必須按順序關閉對象(先記錄集后數據庫)
          rst.Close
          dbExternal.Close
          
          ' 顯式釋放對象
          Set rsA = Nothing
          Set rst = Nothing
          Set dbExternal = Nothing
      End Sub

       進階版,可以指定顯示第幾個附件

          Dim rst As DAO.Recordset2
          Dim rsA As DAO.Recordset2
          Dim fld As DAO.Field2
          Dim strFullPath As String
          Dim dbExternal As DAO.Database
          Dim strConnect As String
          Dim lngAttIndex As Long
          
          ' 構建帶密碼的連接字符串
          strConnect = ";Database=" & DBPath & ";PWD=" & GetBDBPW & ""
          
          ' 直接打開外部數據庫連接
          Set dbExternal = DBEngine.Workspaces(0).OpenDatabase("", False, False, strConnect)
          Set rst = dbExternal.OpenRecordset("tblsystemsetting")
          
          If Not rst.EOF Then
              ' 獲取附件索引值
              lngAttIndex = Nz(rst("AttIndex"), 1) ' 默認為1如果字段為Null
              
              Set fld = rst("Attachments")
              Set rsA = fld.value
              
              ' 移動到指定的附件索引
              If Not rsA.EOF Then
                  If lngAttIndex > 1 Then
                      rsA.MoveFirst
                      rsA.Move lngAttIndex - 1
                  End If
                  
                  If Not rsA.EOF Then
                      strFullPath = VBA.Environ("TEMP") & "\" & rsA("FileName")
                      On Error Resume Next
                      Kill strFullPath
                      On Error GoTo 0
                      
                      rsA("FileData").SaveToFile strFullPath
                      Me.Image57.Picture = strFullPath
                  End If
              End If
              
              rsA.Close
          End If
          
          rst.Close
          dbExternal.Close
          
          Set rsA = Nothing
          Set rst = Nothing
          Set dbExternal = Nothing
      End Sub

       

      posted @ 2025-07-27 17:53  一曲輕揚  閱讀(19)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产成人精品免费视频app软件| 日韩伦理片| 精品熟女少妇av免费久久| 加勒比在线中文字幕一区二区| 亚洲国产超清无码专区| 欧美丰满熟妇xxxx性ppx人交| 国内精品视频一区二区三区八戒 | 91网站在线看| 体态丰腴的微胖熟女的特征| 欧美在线一区二区三区精品| 国产综合久久99久久| 亚洲天堂一区二区成人在线| 福利视频一区二区在线| 亚洲熟妇色xxxxx亚洲| 来凤县| 久久国产成人精品国产成人亚洲| 国产成人精品亚洲日本在线观看| 日本深夜福利在线观看| 一本久道久久综合久久鬼色| 又黄又爽又色的免费网站| 亚洲欧美日韩在线码| 国内精品视频一区二区三区| 中文区中文字幕免费看| 国产日韩乱码精品一区二区| XXXXXHD亚洲日本HD| 中文字幕人妻精品在线| 国产精品视频免费一区二区| 欧美疯狂三p群体交乱视频| 亚洲精品无码久久一线| 青青国产揄拍视频| 国产成人午夜福利在线观看 | 国产女同疯狂作爱系列| 妓女妓女一区二区三区在线观看| 亚洲精品成人片在线观看精品字幕| 亚洲欧美国产免费综合视频| 国产成人亚洲一区二区三区| 亚洲乳大丰满中文字幕| 亚洲av永久无码精品天堂久久| 无码人妻丝袜在线视频| 国内精品久久久久久久coent| 亚洲国产精品无码一区二区三区|