您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> ACCESS >> 辅导 >> 正文    
  ACCESS中重新定位链接表二步走 【注册男护士专用博客】          

ACCESS中重新定位链接表二步走

www.nanhushi.com     佚名   不详 

  假设前台数据库文件名为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
  其实很简单只有两步,判断链接是否正确和刷新链接表。

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    ACCESS中两个特殊的宏
    VB基础(VB字符串操作方法…
    VB基础(VB字符串操作方法…
    Access制作复杂报表(Exc…
    ACCESS的参数化查询
    设置在Access项目中检索…
    纯编码实现Access数据库…
    远程连接access数据库的…
    解决Access出现的0x8000…
    Access辅导:在Access中…
    专 题 栏 目

      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)                            【进男护士社区逛逛】
    姓 名:
    * 游客填写  ·注册用户 ·忘记密码
    主 页:

    评 分:
    1分 2分 3分 4分 5分
    评论内容:
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。