多客户环境下VB数据库编程之(2)

2008-04-09 04:41:02来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

数据访问控制

  在单用户环境中,只有一个用户在访问数据,因此应用程序不会发生资源请求冲突。而在多用户环境中,当用户访问数据时,可能会发生冲突。为了管理这些冲突,Microsoft Jet提供了数据访问控制和应用程序的锁定服务,以保证在给定的时间内只有一个用户可以访问数据。数据访问控制用来对数据库的部分或全部进行访问限制,通常可分为两类,一类是用户限制,另一类是功能限制。用户限制用来阻止某些人(或只允许某些人)查看或修改“敏感”数据。例如,在工资系统中,大多数人可以查看职工的工资,但只有少数人才有权修改实际的工资信息。功能限制只对程序的某个部分起作用,而不管用户是谁。例如,在订单登记系统中,如果把价格表设为只读模式,则可防止用户随意修改某些项目的价格。 在应用程序中,可以通过程序控制或Microsoft Jet数据库引擎控制来处理限制。其中程序控制可以施加于程序自身,而引擎级控制则限制了任何试图访问数据库信息的程序。

  1.互斥地使用数据库。以互斥方式打开数据库是对数据访问施加的最大限制,它实际上是以“独占”方式使用数据库。这种限制可以阻止任何用户或程序访问正在使用的数据库中的信息。由于这种方式的限制太大,因而只用于那些影响整个数据库的操作,包括:

  压缩数据库。

  更新整个表(例如用UPDATE查询)。

  通过添加表、字段或者索引来修改数据库的结构。

  处理特殊的用户需求(例如传送审计信息)。

在程序代码中,为了以独占方式打开一个数据库,必须把OpenDatabase方法的第二个参数设置为True,例如:

  Dim oldDb As Database

  Dim oldws As workSpace

  Set oldDb=oldWs.OpenDatabase("Members.mdb",True,False)

用上面的代码打开数据库时,如果该数据库未被其它用户使用,则打开数据库,这样直到关闭之前,该数据库不会被其它用户或程序访问;如果数据库正在被其它用户使用,则返回一个错误。
156

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:多客户环境下VB数据库编程之(9)

下一篇:多客户环境下VB数据库编程之(4)