求ODBC连接ACCESS2007执行语句出现“表达式中函数未定义”的缘由

tmpttt 2011-09-28 10:53:14
做了配置文件:
db.driverName=sun.jdbc.odbc.JdbcOdbcDriver
db.url=jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:/develop/Database1.accdb

Connection con = null;
PreparedStatement pt = null;
ResultSet rs = null;

int logFlag = 0;
String strAlert = "";
try{
con = com.core.db.DBUtils.getConnection();
pt = con.prepareStatement(" SELECT userid, "
+ " sum(IIF(WEBNUM is NULL or WEBNUM = '',1,0))as NOTWEBNUM, "
+ " sum(IIF(WEBNUM is not NULL and REPLACE(WEBNUM,' ','') <> '',1,0))as HASWEBNUM, "
+ " sum(IIF(user_delete = '1',1,0))as USER_DEL, "
+ " sum(IIF(deleteflage = '1',1,0))as MNG_DEL, "
+ " sum(1) as C "
+ " FROM tblinfo "
+ " group by userid ");


rs = pt.executeQuery();


以上语句在ACES2007中执行正确,但是在代码中运行控制台却报出以下异常:
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 表达式中 'REPLACE' 函数未定义。

找了一些资料,貌似说replace方法是VBA的方法,可是又有说ACCESS2007支持,倒腾始末,未能求解,有前辈愿意指点迷津么?非常感谢。
...全文
531 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2011-09-29
  • 打赏
  • 举报
回复
REPLACE 的问题,你先把这个函数去赶掉试一下。
tmpttt 2011-09-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wwwwb 的回复:]

在你的语言环境中实现,打开记录集->循环->用REPLACE(OR 相似功能)替换->存入表中
[/Quote]

嗯, 我的语句主要是想过滤掉无内容的空格字符串,也怪当初表单没有严格验证造成了脏数据。值得在access中将这些空格都清理掉了。

说明一下,W整理说的操作应该是在access中进行的,后来的同学请注意。希望日后有升级驱动或者API支持access在ODBC中的的这个缺陷。(结贴了。)
tmpttt 2011-09-29
  • 打赏
  • 举报
回复
昏~

翻箱倒柜,找了06年的帖子:
http://topic.csdn.net/t/20061230/14/5266599.html , 就说replace在非access界面中使用。

看来JDBC在access中真的是没办法崭露头角了。。。如果有前辈有解决经验的,希望还能赐教啊。
wwwwb 2011-09-29
  • 打赏
  • 举报
回复
在你的语言环境中实现,打开记录集->循环->用REPLACE(OR 相似功能)替换->存入表中
tmpttt 2011-09-29
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wwwwb 的回复:]

REPLACE 不能用于ODBC中
[/Quote]

re:谢谢w。 除了replace,ODBC还有别的一样功能的吗?
tmpttt 2011-09-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 acmain_chm 的回复:]

REPLACE 的问题,你先把这个函数去赶掉试一下。
[/Quote]

re:是的,木有replace语句是可以执行的。之前开发的语句都能用,但是现在想做这样的一个操作的时候,受阻了。。。请问有什么办法可以达到replace一样的效果吗?
wwwwb 2011-09-29
  • 打赏
  • 举报
回复
REPLACE 不能用于ODBC中

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧