在模组中侦测错误适用版本:企业版

为了确保逻辑上没有错误发生,我们所设计的资料库模组得用资料库设计标准来检验,举例来说,若程式形成无穷回圈即表示在逻辑上发生错误了。在实体上的检验是:资料库解决方案与使用者的资料库模组必须符合特定的DBMS要求,例如:Oracle DBMS只允许一个表格中只有一栏能使用长资料库型态,否则就会产生错误。这种资料库逻辑正确,但实体上却发生错误的情形还是有可能会发生的,尤其是我们要利用还原工程建立新资料库时。

此时,透过Visio 2000企业版,使得我们不论是利用 产生精灵  重新整理模型精灵  更新资料库精灵  建立 命令来修改模组,Visio 2000都会自动以 错误检查 功能命令来侦测是否发生错误,并自动修正它。

接着,我们便一同来练习如何透过Visio 2000的 错误检查 功能,来自动修正我们在制作资料库时可能会发生的错误吧!

  1. 接续之前的练习范例,从 资料库 功能表中选择 模型   错误检查 指令。
  2. 此时,Visio 2000便会开始进行资料库的错误检查,并产生 输出 视窗。
  3. 没多久,系统便会出现一个错误讯息内容为:

  4. 开始逻辑验证...
    逻辑验证完成 — 0个错误0个警告
    C:\database.vsd: 正在开始Microsoft Access实体验证
    C:\database.vsd : error P3600: '`产品类别_产品资料_FK1`' :
    Mismatched data types between child column '`产品资料`.`类别编号`'
    and parent column '`产品类别`.`类别编号`' are not allowed (only ONG COUNTER is allowed)
    in the foreign key relationship under Access.
    C:\database.vsd: 实体验证完毕 - 1个错误0个警告。

  5. 这个警告通知我们资料库表格的型态不正确,那要如何修正?又是哪里出了问题呢?
  6. 试着在错误讯息处按下滑鼠右键,在快显功能表中选择 转到来源 ,此时会发觉之前所建立的关联图箭头部分被选取了,代表这里出了问题。


  7. 接着,要如何解决呢?请按下滑鼠右键,在快显功能表中选择 取得讯息说明 ,便会出现说明视窗,我们可以在此说明中找到所要的答案。


  8. 以本范例为例,我们只要分别把「产品资料」与「产品类别」资料库表格中的「类别编号」栏位的资料类型 大小 改变成 大 ,即由原来的整数变更为长整数,就行得通了!




  9. 当我们设定此数字的「大小」为「小」时,相当於 在Access中设定「栏位大小」为「整数」


    当我们设定此数字的「大小」为「大」时, 相当於在Access中设定「栏位大小」为「长整数」

    可别忘了,两个资料库表格「产品资料」与「产品类别」都要改变才正确哦!


    注意

    可别忘了,两个资料库表格「产品资料」与「产品类别」都要改变才正确哦!


  10. 完成之後,再进行一次 错误检查 工作看看。


  11. 经过修正之後,错误便解决了
  12. 此外,我们也可以针对 错误检查 功能再进行更多的测试。
  13. 举例来说,点选「产品类别」资料库表格,按下滑鼠右键後,在快显功能表中选择 资料库属性 ,再选择 行 。接着点选「说明」栏位後,按下 编辑 钮,再选择 资料类型 标签,把 长度 变更成为「512」。


  14. 故意把「产品类别」资料库表格栏位中的「说明」栏位设定文字属性长度为512
  15. 再利用 错误检查 功能试试,此时系统会告诉我们行的长度超出目标DBMS所容许的最大长度(255)了。


  16. 相信您一定有办法利用前述作法找到解决这个问题的方法,在此便不赘言了。

  17. 若您还想了解更多的错误检查功能或是要试着更正与解决更多的资料库问题,请在光碟范例中找到一个名为「ERROR.MDB」的Access档案。您可以利用之前所学过的 还原工程 步骤来读入此资料库,再利用 错误检查 功能,一一检查并解决这个资料库的问题。


    在笔者所附的范例ERROR.MDB中包含了不少错误与警告,有兴趣了解的朋友可以自行研究

    注意

    若您还想了解更多的错误检查功能或是要试着更正与解决更多的资料库问题,请在光碟范例中找到一个名为「ERROR.MDB」的Access档案。您可以利用之前所学过的 还原工程 步骤来读入此资料库,再利用 错误检查 功能,一一检查并解决这个资料库的问题。


    在笔者所附的范例ERROR.MDB中包含了不少错误与警告,有兴趣了解的朋友可以自行研究