网站大量收购独家精品文档,联系QQ:2885784924

Visualfoxpro共享数据库访问安全策略.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visualfoxpro共享数据库访问安全策略.doc

Visual foxpro 共享数据库访问安全策略 孙越 董欣( (沈阳师范大学职业技术学院 , 辽宁 沈阳 110036 ) 摘要: 介绍VISUAL FOXPRO 数据库中对数据共享访问技术,包括数据库共享访问中解决多个用户使用数据库和共享数据有效方法,为了保证数据完整性对共享访问进行限制 关键字: 数据库; 共享访问; 安全 VISUAL FOXPRO对数据库中数据进行共享访问技术,解决为多个用户共享访问数据方法、保证数据安全对访问进行限制。VISUAL FOXPRO支持对数据库中数据进行独占或共享访问、锁定与解锁、记录缓冲和表缓冲技术。 一、据库中数据访问控制 1、数据表打开方式 数据库中表打开方式有共享和独占两种方式,共享方式允许多个用户对数据表中数据进行访问,独占方式只允许一个用户对数据表中数据进行访问。 (1)独占方式打开数据表 独占方式打开TABLE表: SET EXCLUSIVE ON USE TABLE 也可以用下面命令: USE TABLE EXCLUSIVE 独占方式打开表,其它用户不能访问和修改表中的数据。SET EXCLUSIVE设置不改变已经打开表的状态。在SET EXCLUSIVE ON状态下打开的表,当把SET EXCLUSIVE OFF时,表保持独占状态。 (2)共享方式打开表 进行多用户模式设计时,应以共享方式打开表及备注、索引文件,允许多个用户同时问数据表中的数据。 SET EXCLUSIVE OFF USE TABLE 也可以用下面命令: USE TABLE SHARED 当向一个共享数据表中添加或更改数据时,必须锁定记录或整个表,防止多个用户更改记录时产生冲突。 2、数据锁定和解锁 进行共享数据设计时,应当限制共享访问冲突,保护数据表中数据完整性和安全性,方法就是对数据表进行锁定和解锁操作。 数据自动锁定 自动锁定打开数据表命令: SET LOCK ON VISUAL FOXPRO数据库中不同命令对数据表锁定范围是不同的。当表被其它用户或其它用户独占方式打开时,另一用户再进行锁定该表,操作失败。 当重复锁定表时,为了防止死锁的发生,将设置重定时间或次数。 SET REPROCESS TO 参数 TO AUTOMATIC 参数:-2 VISUAL FOXPRO 自动尝试重复锁定 -1 直到重复锁定成功为止,不允许ESC中断。 0 不断尝试锁定,可用ESC中断。 正数加上SECONDS 持续尝试锁定秒数 正数未加上SECONDS 表示重复锁定次数 (2)数据人工锁定 LOCK()函数可以锁定表中一个或多个记录 FLOCK()函数可以锁定当前表或指定表 数据解锁 解锁自动锁定记录时,只需要移动指针。 UNLOCK 解锁当前工作区记录或文件 UNLOCK ALL解锁当前工作区所有文件 END TRANSACTION 对所有自动锁定进行解锁 缓冲技术保护数据完整性 助缓冲技术,可以较好地解决数据更新过程中所遇到的冲突:当前记录被复制到一个由VISUAL FOXPRO进行管理的内存或磁盘区域,其它用户仍然可以同时访问原来记录。当离开该记录或编程方式更新该记录时,VISUAL FOXPRO将准备锁定该记录,确认其它用户没有做修改,然后写入编辑结果。在试图更新数据时,还必须解决冲突,如果有冲突应防止编辑结果写入来表。 缓冲方式有记录缓冲和表缓冲两种方式: 使用记录缓冲的保守式记录锁定 USE TABLE ALIAS TABLE IN 0 SHARE CURSORSETPROP(“BUFFERING”,2) 使用记录缓冲的开放式记录锁定 USE TABLE ALIAS TABLE IN 0 SHARE CURSORSETPROP(“BUFFERING”,3) 使用保守式表缓冲 CURSORSETPROP(“BUFFERING”,4) 使用开放式表缓冲 CURSORSETPROP(“BUFFERING”,4) 二、数据更新控制 使用缓冲进行更新 检测字状态 GETFLDSTATE(字段名/字段名序号) 如果使用-1,则返回一个字符串,第一位1是删除标志,2表示该记录已经被删除。第二位值为2表示字段被修改,3表示追加记录的字段未做编辑,4表示编辑了追加记录的字段,如果为1表示字段未做编辑或删除状态未做更改。 检测字段值 在使用缓冲技术打开表的字段含有3个可能值,首先将数据表复制到缓冲区中,保留未修改的初值,该值可用OLDVAL()函数获得,其次用户可对缓冲区中字段进行编辑,这时在表单上显示最新值,最后在某个记录字段进行修改的同时,这个数据表字段实际值与当前缓冲区中最初值不同。 发送更新 数据修改完毕后,使用TABLEU

文档评论(0)

docinpfd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档