注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

王朋波 廊坊师范学院信息技术提高班十一期

坚持,坚持,没有什么可以将自己打败的。加油……

 
 
 

日志

 
 

【转载】那些天,我们一起犯的错误!(数据库红皮书五个实例总结)  

2014-05-14 16:14:34|  分类: 提高班 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
实例一:系统登录
问题1、 Microsoft.Jet.OLEDB版本号的问题:
在我们使用Connection对象建立与数据库的联系时,有时是Provider=Microsoft.Jet.OLEDB.3.51,有时候是Provider=Microsoft.Jet.OLEDB.3.41,还有时候有得用Provider=Microsoft.Jet.OLEDB.4.0 
这是为什么呢?
原因就在于Microsoft Access版本的不同,若用Microsoft Access 2000或者2002创建数据库,则必须要用Microsoft.Jet.OLEDB.4.0 ,否则,将无法识别数据库格式。其他情况下,能用3.41和3.51的情况下,都可以用4.0去代替。
问题2、路径问题
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
 在红皮书中app.path 后面的目录里面有数据库这个文件夹,工程文件也都是放在这里的,而我在建立实例一1.mdb 的时候,直接放到了保存工程的文件夹下。没有数据库这个文件夹。
这里出错的关键所在:对于app.path认识不够清楚! App.Path返回你EXE程序所在的文件夹的全路径,也就是相对的路径!有时候我们还会使用绝对路径,但是,这样的话容易出现问题。比如,换了一台电脑的话,或者文件被移动到其他位置的时候,就会找不到路径!
问题3、数据库与代码中字段名不统一问题!
在我的程序中,连接数据库的代码中我写的字段名是:口令。但是, 在创建数据库时我写的却是 : “密码”
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
  问题4、标点符号问题
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
 
一定要理解这个地方这对单引号的意思!其中用红色圈画起来的地方是一个整体,表示的是引用UserName这个字符串变量。在SQL语法中标记字符串内容要用单引号!

实例二:使用ADO访问数据源
我在做的过程中倒是没有什么问题,主要在建立ODBC数据源的时候,先在控制面板里面找到管理工具,然后按照要求去做就好了。不过我在一些博客中发现有人写到:这样的问题:(如图)
【VB与数据库】红皮书之错误总结 - 周 洲 - 周洲 廊坊师范学院信息技术提高班 十一期
 问题还是出在了连接数据源的代码上:objCn.Open "DSN=实例2DSN"   这是正确的,我写的是:objCn.Open "DSN =实例2DSN"  
大家看出来是哪里的问题了么,我找了半天才看出来。DSN和=之间多了一个空格!!所以就没有找到数据源。。不能粗心马虎啊。。。
哈!没错啦!这正是周二童鞋的博客

实例三 :使用数据绑定访问数据。
这个例子比较简单,就一两句代码。但是我还是遇到了几个问题!比较幸运哈!
问题1、
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
  这是由于我没有按照红皮书上的要求去设置ADODC的属性造成的。
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
 
问题2、
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
 对于这个问题,我真的是好无语啊!没有任何的错误!而且在xp的系统上做这个程序的时候没有任何的问题!换到我的win8笔记本上,就开始出现这个问题!自己找了半天也没有发现错误的地方。后来通过百度才知道,是引用的不同的微软的ActiveX Data Objects版本的问题!在加载Microsoft ADO Data control 6.0 控件时,系统默认引用的是Microsoft ActiveX Data object 2.5,只要把这个版本改成2.0就好了。具体是为什么,我也不知道……,希望有知道的大虾指点一二。。。
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
实例四:分页显示记录
我做的过程也没有遇到什么问题,主要是注意了每页的显示的记录,以及你自己创建的数据库的记录的条数要足够多,只有数据库中的数据记录多于每页能够显示的记录,才会有分页的效果。
实例五: 查询数据库
问题1、查询有空行、并且保留着上次的记录
那些天,我们一起犯的错误!(数据库红皮书五个实例总结) - 11期刘文彬 - 刘文彬 廊坊师范学院提高班十一期
 解决办法:在查询按钮command的单击事件里面加上一句代码设定MsFlexGrid的row属性(大家别在属性窗口改,解决不了上面问题的!):MSFlexGrid1.Row = 1
感触:
虽然都是一些小错误,但是却暴露的很是时候!我觉得这样的低级错误要多多的犯一些,但是每次都必须及时的总结吸取经验教训,这样积累了一定量的犯低级错误的经验后,就会减少我们犯高级错误、大错误的机率!而犯低级错误的成本是相对于高级错误来说要低廉的多,高级错误成本太大!要尽量避免!
所以,如果此时的你也正犯这样的错误,那么,请尽情欢呼吧!

  评论这张
 
阅读(25)| 评论(6)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017