Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

03的代码在2010运行出错

于枫  发表于:2015-04-21 09:32:18  
复制

 Dim cnn1 As New ADODB.Connection
 Dim sqlstr1 As String
 Dim sqlstr2 As String
 Dim rst1 As New ADODB.Recordset
 Dim rst2 As New ADODB.Recordset
  With cnn1
  .Provider = "microsoft.jet.oledb.4.0"
  .ConnectionString = CurrentProject.Path & "\.mdb"
  End With
  cnn1.Open CurrentProject.Path & "\sj.mdb"
 sqlstr1 = "select * from 111"

 sqlstr2 = "select * from ss"


在2010中将mdb扩展名改名2010的扩展名,运行出错,怎么改呀?

另外在本数据库已经打开的情况下,对某个表操作,怎样简化代码?

 

Top
煮江品茶 发表于:2015-04-21 11:10:37
看看2010的扩展名是什么不就完事了

红尘如烟 发表于:2015-04-22 10:10:03

不要乱改,而是要去看你那个文件的实际扩展名是 .mdb 还是 .accdb。

这里是依据的实际的文件名称,而不是说你在2003中就要用 .mdb,到2010中就要用 .accdb。

在2010中,如果你没有把文件格式转换成2007格式,仍然是2002-2003格式,那还是照样要用 .mdb 扩展名。



于枫 发表于:2015-07-13 08:34:59
就是说1楼代码在2003格式的文件中运行正常,在2010格式中的文件运行出错,不知是什么原因,是不是引用错误或者什么的?

于枫 发表于:2015-07-13 08:46:04
这个代码之前是在2003下运行正常的,后来想起2010下运行,将2003文件另存为2010格式,并在vba下将代码中的mdb改为2010的扩展名,运行出错

于枫 发表于:2015-07-13 08:56:15
   'conn.Provider = "Microsoft.ACE.OLEDB.12.0" 'access2007/2010
    conn.Provider = "Microsoft.Jet.OLEDB.4.0"   'access2003


cspa 发表于:2015-07-14 19:31:32
"在起2010下运行,将2003文件另存为2010格式,并在vba下将代码中的mdb改为2010的扩展名,"这样做是不行的,应该是将2003的文件转换为2010格式才行。



总记录:6篇  页次:1/1 9 1 :