Access中数据表的自动重新联接实例分析

2016-02-19 19:07 11 1 收藏

下面图老师小编跟大家分享Access中数据表的自动重新联接实例分析,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

【 tulaoshi.com - 编程语言 】

  用Access做应用程序,往往做成“数据”和“程序”两个数据库,“数据”数据库中只存放数据表,“程序”数据库中存放所有的form,query,report,module等,通过表联接“程序”数据库可以访问所有“数据”数据库中的表。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  当我们的应用程序更换存储位置的时候往往失去正确的表联接,造成运行错误。下面的一段程序可以自动找回表联接。在我的应用中“程序”数据库名字是stockMgr.mdb,“数据”数据库名字是stock-Data.mdb。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  注意: 该程序仅限于“程序”和“数据”存放在同一个目录而且是对应单个“数据”文件的情况。 以下为

Function ReAttachTable()
Dim MyDB As Database, MyTbl As TableDef
Dim cpath As String
Dim datafiles As String, i As Integer
On Error Resume Next
Set MyDB = CurrentDb
cpath = trimFileName(CurrentDb.Name)
datafiles = "stock-data.mdb"
DoCmd.Hourglass True
For i = 0 To MyDB.TableDefs.Count - 1
Set MyTbl = MyDB.TableDefs(i)
If MyTbl.Attributes = DB_ATTACHEDTABLE And Left(MyTbl.Connect, 1) = ";" Then
MyTbl.Connect = ";DATABASE=" & cpath & datafiles
MyTbl.RefreshLink
If Err Then
If vbNo = MsgBox(Err.description & ",继续吗?", vbYesNo) Then Exit For
End If
End If
Next i
DoCmd.Hourglass False
msgbox "Tables relink finish."
End Function
'绝对路径中去掉文件名,返回路径
Function trimFileName(fullname As String) As String
Dim slen As Long, i As Long
slen = Len(fullname)
For i = slen To 1 Step -1
If Mid(fullname, i, 1) = "" Then
Exit For
End If
Next
trimFileName = Left(fullname, i)
End Function

  在程序启动或者按钮动作中调用即可。

来源:http://www.tulaoshi.com/n/20160219/1620036.html

延伸阅读
标签: 电脑入门
到了年底,单位要报送的表格非常多,有时就请一些非专业老师帮助录入,但在录入的过程中我发现不少老师录入的表格数据中存在一些空格,影响了数据的整体效果。如果一个个地修改既费时又费力,针对此现象我想出了几种有效的解决方法并且收到了良好的效果,因此写下来与广大读者一起分享。 一、提前预埋设置,做到事半功倍 1. 提醒用户输入的数...
代码如下: select user_name,count(*) as count from user_table group by user_name having count1; 这个我在很早有发过一个asp下的ACCESS 的
标签: MySQL mysql数据库
  在进行数据表检查或修补时,可以先将数据表锁定,可确保数据表的安全: mysqlLOCK TABLE tbl_name READ; mysqlFLUSH TABLES; 将数据表锁定后再进行检查或修补的工作。完成后再解除锁定: mysqlUNLOCK TABLES; //LOCK TABLE tbl_name READ表示要锁定成只读状态,在这个状态下用户只能读取数据表,不能写入。 LOCK TABLE tbl_name W...
正在看的ORACLE教程是:Oracle 数据表分区的策略。本文描述通过统计分析出医院信息系统需分区的表,对需分区的表选择分区键,即找出包括在你的分区键中的列(表的属性),对大型数据的管理比较有意义, 本文的工作在Oracle8.1.6下实现。 Oracle虽然是一个大型的DBMS,但如果不对记录比较多的表进行处理,仍然发挥不了Oracle管理大型数据...
我们先来打开一个Access数据库, 单击“文件”菜单上的“获取外部数据”项,并单击其子菜单上的‘链接表’命令。现在弹出一个对话框,很像Access中打开一个文件的对话框。 我们现在导入一个DBASE数据库文件。先将鼠标移动到“文件类型”下拉框上,单击鼠标左键,弹出一个下拉列表。 这些文件类型链接的方法基本上...

经验教程

720

收藏

51
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部