步骤一:请检查conn.asp中的连接字符是否正确,如果没有错误,还提示数据库连接出错,往下看access数据库连接错误。
步骤二:把数据库下载到本地(默认数据库 database/#newasp.mdb),用ACCESS打开,压缩修复数据库(打开ACCESS -- 工具 -- 数据库实用工具 -- 压缩和修复数据库);然后重新上传access数据库连接错误。
步骤三:如果以前 *** 作无误,照样出现数据库连接出错,那么就是权限问题了需要更改权限。
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程序之一。Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。
软件开发人员和数据架构师可以使用Microsoft Access开发应用软件,“高级用户”可以使用它来构建软件应用程序。和其他办公应用程序一样,ACCESS支持Visual Basic宏语言,它是一个面向对象的编程语言,可以引用各种对象,包括DAO(数据访问对象),ActiveX数据对象,以及许多其他的ActiveX组件。
表格模板。 只需键入需要跟踪的内容,Access 便会使用表格模板提供能够完成相关任务的应用程序。 Access 可处理字段、关系和规则的复杂计算,以便您能够集中精力处理项目。 您将拥有一个全新的应用程序,其中包含能够立即启动并运行的自然 UI。
比如在你的工程目录中建一个dbf\vir.mdb //Access数据库,然后你需要做以下 *** 作:
1.在StadAfx.h里面添加#include<afxdb.h>//新加入头文件,用于CDatabase类。
2.在StadAfx.h最后的#endif上添加#import"msado15.dll"no_namespacerename("EOF","rsEOF")
这时,你要把msado15.dll拷到与dbf同级的目录,也就是工程目录里,当然你可以该路径
3.在你自己的工程里,比如MyProc是你建的工程,添加代码
CMyPorcApp::CMyProcApp(){
CoInitialize(NULL)
SQLConfigDataSource(NULL,ODBC_ADD_DSN,"MicrosoftAccessDriver(*.mdb)",\
"DSN=MyImageDBQ=dbf\\vir.mdbDEFAULTDIR=dbf")//注册本地数据库数据源
m_db.OpenEx("DSN=MyImage",CDatabase::noOdbcDialog)//MyImage是数据源名称
}
4.在前面的函数体之前创建全局变量CDatabasem_dbCRecordsetm_rec(&m_db)
5.使用数据库{
CStringstrSQL="select*fromvirdb"
BSTRbstrSQL=strSQL.AllocSysString()
m_rec.Open(CRecordset::dynaset,strSQL)
while(!m_rec.IsEOF())
{
//使用数据库的代码,读出来的数据都是字符串型的
CStringMyVirable
m_rec.GetFieldValue("字段名",MyVirable) //将某个字段的当前行的值读到MyVirabl中
//......
m_rec.MoveNext()//将记录移到下一行
}
}
本程序是自动注册数据源的,当然可以手动注册数据源,关于如何注册数据源并不麻烦,叙述起来不太方面,你就参考其他的吧。不过建议不用手动注册数据源,这样你地程序移植性不好.
它的各步骤及参数意义如下:
第一行程序:利用Server对象的MapPath函数,取得要打开数据库的完整的文件路径,并存储在变量DbPath中。这其中,数据库名是我们需要指定的参数,应该用我们要打开的数据库的实际名称替代。如果数据库名是直接作为常量出现,要用引号将其括起来,并且不能丢掉扩展名。例如数据库是Test.mdb,则该行程序成为:DbPath=Server.MapPath(“Test.mdb”)。
第二行程序:建立一个ADO对象集中的Connection对象,也即连接对象。这是建立数据库连接的初始步骤。执行这行程序后,Conn成为一个连接对象。
第三行程序:利用连接对象Conn的Open方法打开一个指定的数据库。因为我们要打开的是Access数据库,所以要指定ODBC驱动程序参数,表示要透过Access的ODBC驱动程序来访问数据库:driver={Microsoft
Access
Driver
(*.mdb)}。另一个参数dbq=
&
DbPath,运算后等效于dbq=Server.MapPath(数据库名)
,是利用了第一行的Server.MapPath(数据库名)函数,用来指定要打开的数据库文件。到这里,就已经打开了数据库名指定的数据库。如果数据库名是“test.mdb”,则打开Access数据库Test.mdb。在这一行里指定的参数,要严格按照格式原样写出,不能省略或改动,也没有可变参数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)