多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > access > 重新定位鏈接表二步走

重新定位鏈接表二步走

來源:程序員人生   發布時間:2013-10-18 11:54:57 閱讀次數:3100次

盡管Accxp網上有很多關于定位鏈接表的貼子,但還是有很多的朋友詢問這方面的問題。應letter網友的提議,結合Alex總版主的重新定位鏈接表文件源碼,現將這方面的具體操作介紹如下:

假設前臺數據庫文件名為frontBase.mdb
后臺數據庫文件名為backData.mdb
frontBase當中有鏈接表tbl1, tbl2, tbl3, …,鏈接到backData.mdb中

首先我們要在前臺數據庫文件的啟動窗體加載事件中判斷鏈接是否正確

方法是打開任意一個鏈接表,假設為tbl1,代碼如下:

Public Function CheckLinks() As Boolean
' 檢查到后臺數據庫的鏈接;如果鏈接存在且正確的話,返回 True 。  
   Dim dbs As Database, rst As DAO.Recordset  
   Set dbs = CurrentDb()
   ' 打開鏈接表查看表鏈接信息是否正確。
   On Error Resume Next
   Set rst = dbs.OpenRecordset(“tbl1”)
   rst.Close
   ' 如果沒有錯誤,返回 True 。
   If Err = 0 Then
     CheckLinks = True
   Else
     CheckLinks = False
   End If  
End Function

啟動窗體的加載事件:
Private Sub FORM_Load()
If CheckLinks = False then
Docmd.OpenFORM “frmConnect”
End If
End Sub

frmConnect 連接窗體如下圖

[img]f:m.bmp[/img]


接下來的事情就是如何刷新鏈接表了。
上面的窗體右邊的按鈕是用用來調用API打開文件對話框,具體代碼如下:
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Boolean

Type OPENFILENAME
   lStructSize As Long
   hwndOwner As Long
   hInstance As Long
   lpstrFilter As String
   lpstrCustomFilter As String
   nMaxCustFilter As Long
   nFilterIndex As Long
   lpstrFile As String
   nMaxFile As Long
   lpstrFileTitle As String
   nMaxFileTitle As Long
   lpstrInitialDir As String
   lpstrTitle As String
   flags As Long
   nFileOffset As Integer
   nFileExtension As Integer
   lpstrDefExt As String
   lCustData As Long
   lpfnHook As Long
   lpTemplateName As String
End Type

Private Sub FileOpen_Click()
  Dim ofn As OPENFILENAME
  Dim rtn As String

  ofn.lStructSize = Len(ofn)
  ofn.hwndOwner = Me.hwnd

  ofn.lpstrFilter = "數據庫文件 (*.mdb)" & VBNullChar & "*.mdb"
  ofn.lpstrFile = Space(254)
  ofn.nMaxFile = 255
  ofn.lpstrFileTitle = Space(254)
  ofn.nMaxFileTitle = 255
  ofn.lpstrInitialDir = CurrentProject.Path
  ofn.lpstrTitle = "后臺數據文件為"
  ofn.flags = 6148

  rtn = GetOpenFileName(ofn)

  FileName.SetFocus
  If rtn = True Then
    FileName.Text = ofn.lpstrFile
    FileName.Text = FileName.Text
    OK.Enabled = True
  Else
    FileName.Text = ""
  End If
End Sub

連接按鈕刷新鏈接表 ,代碼如下:
Private Sub OK_Click()
Dim tabDef As TableDef
For Each tabDef In CurrentDb.TableDefs
If Len(tabDef.Connect) > 0 Then
tabDef.Connect = ";DATABASE=" & Me.FileName.Text & ";PWD=" + 后臺數據庫密碼
tabDef.RefreshLink
End If
Next
MsgBox "連接成功!"
DoCmd.Close acFORM, Me.Name
End Sub


其實很簡單只有兩步,判斷鏈接是否正確和刷新鏈接表。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产春色| 欧美日韩亚洲综合另类ac | 久久精品国产亚洲aa | 亚洲欧美综合另类 | 亚洲欧美日韩人成 | 国产jizz18高清视频 | 和同事激情中文版在线观看 | 国产精品免费一区二区三区 | 亚洲第99页| 午夜精品久久久久久久 | 日本一区二区视频在线观看 | 美国一级特黄aa大片 | 久久亚洲精选 | 欧美激情视频二区 | 日本爱爱网站 | 国产欧美日韩免费一区二区 | 视频一区色眯眯视频在线 | 欧洲精品码一区二区三区免费看 | 在线观看视频一区二区 | 国产成人精品第一区二区 | poronovideos德国极品 | 国产精品国产三级在线高清观看 | 东方伊人免费在线观看 | a4yy私人毛片| 综合图区亚洲欧美另类小说 | 国产欧美自拍 | 操操爱| 在线观看视频网站 | 69xx在线观看视频 | 最近在线更新中文字幕1 | 午夜一级做a爰片久久毛片 午夜一区二区三区 | аⅴ中文在线天堂 | 国产精品久久久久久影视 | 男人把大ji巴放进男人免费视频 | 国产亚洲综合一区二区在线 | 伊人丁香婷婷综合一区二区 | 久久久久久久岛国免费观看 | 国产欧美日韩第一页 | 国内免费自拍视频 | 日韩一本二本 | 最近的中文字幕免费视频1 最近的中文字幕免费完整 最近的中文字幕视频大全高清 |