标题:问一个更新access数据库数据的问题
只看楼主
napoo
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-6-4
 问题点数:0 回复次数:7 
问一个更新access数据库数据的问题
问题是 一个更新某字段的sql (更新多个记录), 在vb里面执行的时候没有错误,没有效果.不知道大家谁碰到过, 或者知道如何解决.         如果条件语句换成 where id = '303'执行一切正常,        其他的select, insert的sql语句执行也都很正常。 我查资料好像和什么  沙盒模式可能有关系,实在搞不定了。。。。。。

具体代码如下:

    Dim sql As String
    Dim xxx As Variant
   
    Dim pathdb As String
    Dim myConn As New ADODB.Connection
   
    pathdb = Trim(App.Path) & "\db1.mdb"
    With myConn
        If .State = adStateOpen Then .Close
        
        .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & pathdb & ";Persist Security Info=False"
        
        .Open
        .CommandTimeout = 300
    End With
   
    sql = "UPDATE Table01 SET id='304' WHERE id Like '303*'"
   
    Debug.Print sql
    myConn.Execute (sql)
搜索更多相关主题的帖子: 数据库 access Microsoft Dim sql 
2008-06-04 14:01
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
得分:0 
本身ACCESS中ID是什麽類型?數字?

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2008-06-04 14:23
napoo
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-6-4
得分:0 
文本字段
文本的, 其实这个字段是什么类型无所谓。 只要是使用 like 匹配出多条记录, update 执行好像就被禁止掉了。
2008-06-04 14:31
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
得分:0 
把你程序加ACCESS文件打個包發上來看看

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2008-06-04 14:34
napoo
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-6-4
得分:0 
刚做的一个小例子,表现这个问题的
数据库是 2003 的, 很简单只有一个标2个字段, 更新第二个字段 fld01。 程序应该可以直接运行。

vb_test.rar (61.38 KB)
2008-06-04 14:49
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
得分:0 
*換成%試試

[[it] 本帖最后由 随风逐流 于 2008-6-4 15:08 编辑 [/it]]

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2008-06-04 15:03
napoo
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-6-4
得分:0 
谢谢,可以试用了。
不过我试验过的亚, select * from table01 where id like '303*' 这样用可以的, 为什么update 就要改成%呢。

不过,还是先谢谢! 这个问题总算搞调了
2008-06-04 15:15
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
得分:0 
說句心裡話,
我也是在是很納悶
在我經驗中ACCESS中SQL語句是*星號的,SQL2000裡面才是%
你這個問題我也搞不清楚

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2008-06-04 15:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-217599-1-1.html




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

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