回 帖 发 新 帖 刷新版面

主题:问个数据库更新的问题!

我有个列名为num的列,列中数据为int类型
列中数据登录界面是自动加1更新。怎么办?
sql="select * from biao where name='a'"
rs.open sql,conn,3,3
/*这怎么写?我是这么写的rs("num")=rs("num")+1不行*/
rs.update

回复列表 (共6个回复)

沙发

sql = "update [biao] set [num] = [num]+1 where [name]='"& a &"'"
conn.execute(sql)

板凳

因该这么写:

比如你的表名叫myTable:

"UPDATE mytable SET num=Cint(num)+1 WHERE name='a'"

关键是这里:num=Cint(num)+1就可以了

3 楼

楼上的少了set 而且cint sql里面不认

4 楼

呵呵 我上面的方法用在ACCESS中没有问题 
你这个更新的问题我以前也问过别人,别人告诉我的这种写发
然后用的没什么问题啊

5 楼

1、在SQL里面没有Cint函数,也用不着,SQL本身会进行数据格式的转换。
2、name是T-SQL语句的关键字,最好别用它命名字段。要不然就像我在1楼回帖那样加上方括号。

6 楼

再补充一句,
修改数据不需要返回记录集,没必要用rs.open
直接用conn.execute(sql),省下创建rs对象的步骤

我来回复

您尚未登录,请登录后再回复。点此登录或注册