|
主题: 請高手指點..謝謝
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#12004/7/10 11:56:38
請幫忙看一下以下代碼有沒有錯誤,要怎麼樣修改: <% if request("submit")="添加" then bookid = replace(request("bookid"),"'","''") name = replace(request("name"),"'","''") price = request("price") qty = request("qty") set conn=server.createobject("ADODB.connection") DBPath=server.mappath("data.mdb") conn.open "driver={Microsoft Access Driver(*.mdb)};dbq="&DBPath sqlcmd="insert into product(bookid,name,price,qty)values('"&bookid&"','"&name&"','"&price&"',"&qyt&")" conn.execute sqlcmd conn.close end if %>
提示錯誤: HTTP 错误 500.100 - 内部服务器错误 - ASP 错误 Internet 信息服务
--------------------------------------------------------------------------------
技术信息(用于支持人员)
错误类型: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 /hand/asp.asp, 第 9 行
编辑历史:[此帖最近一次被 achou 编辑过(编辑时间:2004-07-11 15:45:20)]
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#22004/7/10 12:29:06
高手們今天也放假嗎..
怎麼沒人回答啊..
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
浮尘
职务:普通成员
等级:3
金币:7.0
发贴:1258
|
#32004/7/10 19:44:04
& name & "'.'" & price 应该是 & name & "','" & price 吧,用逗号呀。别的没看。
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#42004/7/11 10:16:49
這個沒錯..但是它現在是提示找到到數據庫驅動程序啊...
要怎麼解決..
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#52004/7/11 15:44:21
还是没人懂啊....
5555555..帮一下忙啦.....555
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
沉默是金
职务:普通成员
等级:6
金币:11.2
发贴:4357
|
#62004/7/11 18:44:03
问题一: sqlcmd="insert into product(bookid,name,price,qty)values('"&bookid&"','"&name&"','"&price&"',"&qyt&")"
bookid是数值的话,在插入的时候不需要用单引号,如果是自动编号的话,你是没有办法改变它的ID的
问题二: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 末发现数据源名称哟! :)
问题三: bookid=replace(request("bookid"),"'","")
难人一个……
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#72004/7/12 12:02:47
arhui在上个帖子中说 引用: 问题一: sqlcmd="insert into product(bookid,name,price,qty)values('"&bookid&"','"&name&"','"&price&"',"&qyt&" )"
bookid是数值的话,在插入的时候不需要用单引号,如果是自动编号的话,你是没有办法改变它的ID的
问题二: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 末发现数据源名称哟!
问题三: bookid=replace(request("bookid" ),"'","" )
第一和第三都明白了..但是第二就不知道怎么办啦... 这个文件跟数据库文件是放在同一目录的...
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#82004/7/12 18:56:57
試過用OLE鏈接...出現同樣提示..
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#92004/7/12 19:01:06
图片如下: 數據表結構....都沒錯啊...
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#102004/7/14 10:48:54
各位老大..
我的代碼應該沒錯吧...為什麼用不了呢.....
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
沉默是金
职务:普通成员
等级:6
金币:11.2
发贴:4357
|
#112004/7/14 11:31:24
数据库连接有误了,问题都这么明显了。此路不通,再想别的办法连接数据库嘛。
Set Conn = Server.CreateObject("ADODB.Connection") str = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("**.mdb") conn.open str
试试。 另外给个建议:如果是BOOKID、PRICE是数字或货币型的内容的话,最好改一下字段的属性吧, :)
难人一个……
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#122004/7/15 10:15:39
数据库链接好了...但又有问题了...
源码: ---------------------------------------------------------------- <% dim str if request("submit")="Ìí¼Ó" then bookid = replace(request("bookid"),"'","") name = replace(request("name"),"'","''") price = request("price") qty = request("qty") Set Conn = Server.CreateObject("ADODB.Connection") str = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("data.mdb") conn.open str sqlcmd="insert into product(bookid,name,price,qty)values('"&bookid&"','"&name&"','"&price&"',"&qyt&" )" conn.execute sqlcmd conn.close end if %> -------------------------------------------------------------------------------------
将BOOKID,PRICE的单引号去掉也是一样:
HTTP 错误 500.100 - 内部服务器错误 - ASP 错误 Internet 信息服务
--------------------------------------------------------------------------------
技术信息(用于支持人员)
错误类型: Microsoft JET Database Engine (0x80040E14) INSERT INTO 语句的语法错误。 /hand/asp.asp, 第 12 行
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#132004/7/15 10:19:21
为什么要用str = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("data.mdb") 才能链接到数据库呢...
教材里面全部都是用DBPath=server.mappath("data.mdb") conn.open "driver={Microsoft Access Driver(*.mdb)};dbq="&DBPath 来链接的啊...
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|
绿茶
职务:普通成员
等级:8
金币:10.0
发贴:19267
|
#142004/7/15 10:25:14
教程过时了
|
achou
职务:普通成员
等级:1
金币:0.0
发贴:36
|
#152004/7/15 11:36:08
嘻嘻...是有点老...但也不是改成怎么样吧..
我查看别人的源代码还有很多是这样子的啊..
----------------------- 菜鸟级-----傻瓜 我的小站#-#
|