一、红皮书中连接数据库的方式从各个例子中总结分为这几种:使用ODBC连接连接、
采用ADO对象定义connection连接和用ADO Data控件连接。
-
ADO对象定义connection连接数据库,比如实例1-系统登录对话框
-
使用ADO Data控件,OLE DB,比如实例3-使用数据绑定访问数据
控件通过设置属性
- 使用ODBC数据源连接
(1) 通过电脑自身的控制面板找到ODBC数据源管理程序(可能没有因为系统32位或者64位的原因)
(2) 运行:C:\Windows\SysWOW64\odbcad32.exe
对比:
接口方式 | 易用性 | 运行能力 | 特点 |
---|---|---|---|
ADO | 高 | 高 | 简单易行 |
OLE DB | 难 | 高 | 可以访问非关系型数据库 |
ODBC | 一般 | 较高 | 可以访问非关系型数据库。电脑配置有要求 |
二.实例五-运行时有空白行
师父提出了一个我忽略了的问题实例五在运行时会有空白行出现。我在网上搜到的一些方式,都不是很符合。
三.问题
在敲红皮书的时候,数据库的建立是最大的问题。三种方式都碰到过不同的问题。
首先是access建立总是提醒我已经建立数据库无法新建,后来将东西删除赶紧后才可使用。记得引用数据库,有很多次问题出现在这里。
其次是打开ODBC通过CMD(command)打开时不会出现Microsoft access driver(由于系统的原因)需要找到C盘中的SysWOW64找到odbcad32.exe。或通过上面的方式↑。
最后是ADO Data,需要根据自身电脑的位数打开。↑
印象最深不过实例五。运行时问题显示SQL语句无效,后来发现我的sql代码出现了问题。
还有一个细节问题,没有写问号。
在研究的时候,我偶然发现把关于“身份”的代码删了,发现这样反而可以正常运行。师父提醒我去看一看数据库中是不是那一栏有问题。果然我发现那一栏的命名上出现了问题。改正后结果可以运行,但运行时身份是空白,后来发现是表的设计问题(没有身份,只有口令)。
改正方法:
1.改了一行代码【MSFlexGrid1.AddItem (objRs!用户名 & vbTab & objRs!身份)】因为之前写的是身份和口令,有两个vbTab。把中间的部分删除。
2.双击“系统用户”更改table将原来的内容都删除后可以增加新的再改为管理员。
总结:数据库连接的难度比VB百例瞬间高了好几个度,还是我的学习没有形成系统,让事情变得扑朔迷离。系统化也是接下来的重中之重。