| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 924 人关注过本帖
标题:看看为什么不能更新数据呢?(谢谢各位已经解决)
只看楼主 加入收藏
adsdomain
Rank: 2
等 级:论坛游民
威 望:1
帖 子:127
专家分:54
注 册:2008-5-15
结帖率:50%
收藏
 问题点数:0 回复次数:13 
看看为什么不能更新数据呢?(谢谢各位已经解决)
我写了个小程序,例如访问网址是[url]http://bbs.bccn.net/tc.asp?com=adsdomain[/url],如果是第一次使用该地址就记录adsdomain到数据库表tc中com字段,count字段作为记录该地址访问的次数,第一次为1.
如果第二次访问就更新1为2,以此类推。但是测试“更新数据失败”
代码如下:
tc.asp的代码
<!--#include file = pcconn.asp -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
<%
  com=request("com")
  sql = "select * from tc where [com]='"&com&"'"
  Set rs = Server.CreateObject("ADODB.RecordSet")
  rs.Open sql,conn,1,1
  if rs.recordcount<>0 then
    id=rs("id")
               com=rs("com")
        count=rs("count")
         ne=count+1
              
 Conn.Execute("update [tc] set count='"&ne&"' where id='"&id&"'")
      rs.close   
     '-------------------------------------------------------------------------

else
   Set rs = Server.CreateObject("ADODB.RecordSet")
  conn.Execute "insert into [tc] ([com]) values('"&com &"')"
      Response.Write("第一次访问记录")
end if

%>
</body>
</html>
<%
conn.close
set conn=nothing
%>

pcconn.asp 的代码
<%
set conn=Server.CreateObject("Adodb.Connection")
DBPath = Server.MapPath("pc.mdb")   'data.mdb为数据库文件名,datamdb/为路径,这两个要个数据库的文件名和路径保持一致!
conn.open "provider=Microsoft.Jet.oledb.4.0;data source="&DBpath
%>
数据库pc.mdb结构表名:tc
字段:id ,com,pccount
出错提示
错误类型:
Microsoft JET Database Engine (0x80040E14)
UPDATE 语句的语法错误。
/asptest/id2.asp, 第 26 行
错误行代码:
Conn.Execute("update [tc] set count='"&ne&"' where id='"&id&"'")

[[it] 本帖最后由 adsdomain 于 2008-5-21 18:55 编辑 [/it]]

[[it] 本帖最后由 adsdomain 于 2008-5-28 20:30 编辑 [/it]]
搜索更多相关主题的帖子: 数据 
2008-05-15 19:35
不夜星空
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2008-1-29
收藏
得分:0 
if rs.recordcount<>0 then
               id=rs("id")
               com=rs("com")
               count=rs("count")
               ne=count+1
              
               Conn.Execute("update [tc] set count='"&ne&"' where id='"&id&"'")
                rs.close
我看了还真的无语啊!   楼下你说呢!
count 是关键字!

[[it] 本帖最后由 不夜星空 于 2008-5-15 22:06 编辑 [/it]]
2008-05-15 21:52
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
收藏
得分:0 
我是楼下,但我不知道! 哈哈!开个玩笑

学习编程www.
2008-05-16 11:42
dhdhzzw
Rank: 1
等 级:新手上路
帖 子:949
专家分:0
注 册:2007-8-13
收藏
得分:0 
出错提示
错误类型:
Microsoft JET Database Engine (0x80040E14)
UPDATE 语句的语法错误。
/asptest/id2.asp, 第 26 行
请看清除错误位置。发错误位置的代码/
2008-05-16 14:51
tianyu123
Rank: 1
等 级:新手上路
威 望:2
帖 子:576
专家分:0
注 册:2007-8-26
收藏
得分:0 
Conn.Execute("update [tc] set count='"&ne&"' where id='"&id&"'")

count id 字段是什么类型数据

改变一切,须从改变观念开始!
2008-05-16 18:59
adsdomain
Rank: 2
等 级:论坛游民
威 望:1
帖 子:127
专家分:54
注 册:2008-5-15
收藏
得分:0 
清除错误位置后可以运行啊,就是每次访问都添加一个记录,count是数字id是自动编号的,count如果因为关键字不能使用但是我也看到其他程序也在使用这个也没有什么问题啊?请教各位了.
2008-05-18 21:17
adsdomain
Rank: 2
等 级:论坛游民
威 望:1
帖 子:127
专家分:54
注 册:2008-5-15
收藏
得分:0 
已经把count替换了,但是现实数据类型不匹配,是怎么解释啊?请教各位大侠了
2008-05-21 18:18
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
Conn.Execute("update [tc] set count='"&ne&"' where id='"&id&"'")
使用rs自身的方法更新可以减少一些SQL语句错误
set rsUpdate=Server.CreateObject("ADODB.RecordSet")
rsUpdate.Open "select * from [tc] where id='"&id&"'",conn,1,3
if not rsUpdate.EOF Then
   rsUpdate("count")=ne
   rsUpdate.update
Else
   Response.Write "没有找到要更新的记录"
End IF
2008-05-21 18:24
hxfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:5810
专家分:118
注 册:2005-4-7
收藏
得分:0 
Conn.Execute("update [tc] set [count]='"&ne&"' where id='"&id&"'")
count应该是SQL的关键字,作为字段使用的时候需要加[]

2008-05-21 20:56
adsdomain
Rank: 2
等 级:论坛游民
威 望:1
帖 子:127
专家分:54
注 册:2008-5-15
收藏
得分:0 
谢谢yms123,替换后显示数据类型不匹配.这是什么意思啊》?
2008-05-24 18:19
快速回复:看看为什么不能更新数据呢?(谢谢各位已经解决)
数据加载中...
 
   



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

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