zoukankan      html  css  js  c++  java
  • 标点符号导致的错误

    今天记录了2篇最近出错的问题,本来是不该犯此类错误,但结果就是犯了。

     

    ADO连接字符串中数据文件(如ExcelMDB)文件名必须以“;”结尾,例如:

     

        strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _

                "Data Source=" & App.Path & "\test.xls;" & _

                "Extended Properties=Excel 8.0"

        cnn.Open strCnn

     

    开始测试一般都这样写,后边就需要把红色部分剥离出来,写为下面的样子:

     

        strDBName = App.Path & "\test.xls;"

        strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _

                "Data Source=" & strDBName  _

                "Extended Properties=Excel 8.0"

        cnn.Open strCnn

     

    现在还没有问题,但问题已经隐伏。

     

    因为需要测试数据库是否存在,所以加一句:

     

        If Dir(strDBName) Then Exit Sub

     

    代码就成了这样:

     

        strDBName = App.Path & "\test.xls;"

     

        If Dir(strDBName) Then Exit Sub

     

        strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _

                "Data Source=" & strDBName  _

                "Extended Properties=Excel 8.0"

        cnn.Open strCnn

     

    错误于是产生,strDBName = App.Path & "\test.xls;",红色的分号导致Dir函数每次都返回文件不存在。

     

    不知道别人,自己曾犯过几次这样的错误,每次调试半天,然后恍然大悟,回头就忘。避免的办法应该是:

     

    1. 和配置相关的内容最好独立出来,如文件路径、数据库连接字符串;
    2. 数据库、SQL有关的操作不是很复杂,但容易出错,所以要尽量降低和程序的耦合度,使用实体类,使用NHibernate这样的工具;
    3. 小错误,问题应该建立自己的档案库,必要时可以随时查询(用什么工具?BlogExcel?);

     

  • 相关阅读:
    等差子序列(sequence)
    威士忌(whiskey)
    图论:2-SAT模板
    poj2723-Get Luffy Out
    acdream1412:2-3 trees 组合数dp
    hdu3849-By Recognizing These Guys, We Find Social Networks Useful:双连通分量
    ZOJ2317-Nice Patterns Strike Back:矩阵快速幂,高精度
    ZOJ3519-Beautiful People:最长上升子序列的变形
    hdu2460-Network:边的双连通分量
    hdu4405:概率dp
  • 原文地址:https://www.cnblogs.com/maweifeng/p/86321.html
Copyright © 2011-2022 走看看