| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1671 人关注过本帖
标题:[求助]
只看楼主 加入收藏
xuli
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-8-24
收藏
 问题点数:0 回复次数:20 
[求助]

我刚开始学习asp,以前没接触过数据库,下面的这第三行总是调试出错。 <% Set conn=Server.CreateObject("ADODB.Connection") conn.Open "driver={Microsoft Access Driver(*.mdb)};dbq=" & Server.MapPath("sample.mdb") Set rs=conn.Execute("成绩单") %> 错误类型: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 我先在只知道上面的“成绩单”指的是一个acess中的表,在下面的程序里是要打开并进行数据处理的,但*.mdb和sample.mdb就不懂为什么出现了。可以帮我解答这个问题吗?是不是这个表的存放位置也有讲究?

搜索更多相关主题的帖子: 数据库 Microsoft 成绩单 数据源 
2004-08-24 14:24
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
收藏
得分:0 

conn.Open "driver={Microsoft Access Driver(*.mdb)};dbq=" & Server.MapPath("sample.mdb")

改成

conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("sample.mdb")

Driver 和 (*.mdb)中间有空格!

[此贴子已经被作者于2004-08-24 14:41:08编辑过]


天津网站建设 http://www./
2004-08-24 14:32
xuli
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-8-24
收藏
得分:0 

这是用access建的一个表的名字。这句对应的格式是这样的: Set rs=conn.Execute("数据库表或SQL语句") 书上说它的作用是:利用execute方法产生一个rs对象来操作数据库。 我也不是很明白。


2004-08-24 14:39
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
收藏
得分:0 
Set rs=conn.Execute("成绩单")
没有错,是上一行出错了,呵呵!

天津网站建设 http://www./
2004-08-24 14:45
xuli
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-8-24
收藏
得分:0 
这是刚才出问题的那个完整的程序: 输出表头 <% Set conn=Server.CreateObject("ADODB.Connection") conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("sample.mdb") Set rs=conn.Execute("成绩单") %> <html> <body bgcolor="#6699dd"> Sample.mdb 数据库”成绩单“数据表七栏的表头:<UL> <% for i=0 to 6 response.Write"<Li>" & rs(i).Name next %> <% rs.close %> </UL> </body> </html> 现在一个问题解决了,又出了一个问题: 错误类型: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0xb28 Thread 0xc34 DBC 0x1a81444 Jet'。 /asp实验/5-1.asp, 第 4 行 这还是在说与数据库的连接有问题啊。这次问题是出在哪儿呢?我看错误提示里有DSN,是不是系统DSN没有添加造成的问题?

2004-08-24 15:10
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
收藏
得分:0 

不好意思,我这里运行没问题

[attach]653[/attach]

天津网站建设 http://www./
2004-08-24 17:19
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
收藏
得分:0 

看看这个对你有没有用

[QUOTE]出现“常见错误 不能打开注册表关键字”是什么原因? 作者:
问: 我的asp程序运行时提示: Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005' [Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x1844 Thread 0x1b40 DBC 0x554cc59c Jet'。
/friends/conn.asp,行5 这是什么原因?
答:这是因为你用的access97数据库,我们是用的win2k+access2000驱动,这个对access97的兼容性不太好,有时会出现不稳定的情况。解决的方法也很简单, 你用access2000把你的数据库打开,另存为一个文件,然后把这个文件上传到服务器上覆盖原来的数据库就可以了。[/QUOTE]


天津网站建设 http://www./
2004-08-24 17:23
xuli
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-8-24
收藏
得分:0 

我看了一下我用的access的“帮助”部分,里面有Microsoft(R) Access 2000(9.0.2812)的字样,这就应该是版本说明吧,这样看的话这个Access是2000版本的啊。只不过上面用的是win2000+access2000,我用的是xp+access2000。是xp不适合吗?


2004-08-26 08:15
xuli
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-8-24
收藏
得分:0 
我还有一本书,叫《asp网络应用系统典型模块开发实例解析》,里面用到数据库的地方都用SQL Server 2000,是不是现在数据库都要用这个了?那本书上说SQL Server 2000要比Access功能强大。我该学哪一个呢?

2004-08-26 10:22
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
收藏
得分:0 

Access是小型文件型的数据库,不适合于网络环境下使用,但是使用和维护非常简单方便。

SQL Servre是基于服务的数据库,必须安装数据库服务才能使用,适合大中型的数据库,而他的存储过程/触发器等功能大大加强其功能和灵活性。

其它常用的数据库还有Oracle Sybase DB2 MySQL Foxpro 等等。选择什么数据库一般根据整个系统的规模和构架,像ASP+SQL Server , PHP+MySQL 都是非常常用的形式

[此贴子已经被作者于2004-08-26 13:01:55编辑过]


天津网站建设 http://www./
2004-08-26 12:58
快速回复:[求助]
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017664 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved