(应当是ADO)vc操作access使用到power()函数出错!

lazydie 2009-11-29 10:30:12
如题,DEBUG显示:
m_pszMsg 0x001774b0 "IDispatch error #3092"
m_strErrorDescription "表达式中 'power' 函数未定义。"
若换用sin()等则好用。
搜索知:还可能有其他函数也不好用(如:ln());
参考下述:
http://topic.csdn.net/t/20041202/17/3609930.html(请问:access支持的SQL中,求指数的函数是什么?)
http://www.officefans.net/cdb/archiver/?tid-12191.html(求助:如何自动加载可使用的引用中需要加载的对 象)
http://support.microsoft.com/kb/175484/zh-cn(ACC97: 您使用 Microsoft Access 时,您必须设置的引用)
在access2003的VBA对我的数据库“可使用的引用”到底应当选择哪些?
还是有其它办法,请大家帮忙啊!
(现在我在一个一个把它们全选上!!!!!!!!再看看好不好使!!!!!!!!!!!)

...全文
277 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lazydie 2009-12-01
  • 打赏
  • 举报
回复
谢谢大家!解决了(见8楼)。
lazydie 2009-12-01
  • 打赏
  • 举报
回复
又查了,试了。
这时所能用数学函数方法既不是sql也不是access。而是等同ASP数学函数。
lazydie 2009-11-30
  • 打赏
  • 举报
回复
耐心的试了。
一些数值函数是好用的,另一些就是不好用。还有的是可以替代的:power()-> ^ ;ln()->log()
也就这样了。
那些不能用的,只能是先把它们调用的值从数据库里查出来,再用VC的函数了处理。
认了。
wwwwb 2009-11-30
  • 打赏
  • 举报
回复
http://www.access911.net/fixhtm/72FAB71E11DCEDF3.htm?tt=ODBC%B1%EA%C1%BF%BA%AF%CA%FD%A3%A82%A3%A9%A3%A8%D3%A2%CE%C4%A3%A9%A1%AA%A1%AA%CA%FD%D6%B5%BA%AF%CA%FD%A1%B6%BA%AF%CA%FD%A1%B7

lazydie 2009-11-29
  • 打赏
  • 举报
回复
详细阅读了 ACMAIN_CHM 提供的材料,还是不大清楚,sin可以用,但乘方却不可以(又查了下乘方可以用^代替,但LN()又如何代替呢?)?
ACMAIN_CHM 好像说在安装了Access的机器是可用的。但我又把ACCess重新安装,甚至除了OFFice助手,其他全装,还是不行啊。
可能,我基础较差。请高手帮忙啊!
lazydie 2009-11-29
  • 打赏
  • 举报
回复
感谢ACMAIN_CHM!
初步拜读了。受益匪浅!
但请具体指导下:
VS2008,ACCESS2003环境下到底如何设置才能使用这些函数呢?
“考虑到系统将来的移植性,个人认为不推荐在ADO中使用这些内建函数。”
我必须使用这些内建函数
否则麻烦透了。(我宁愿更换其它数据库)。
请指教!

ACMAIN_CHM 2009-11-29
  • 打赏
  • 举报
回复
ODBC 标量函数
Microsoft® Jet SQL 支持使用由 ODBC 为标量函数定义的语法。例如这一查询:

SELECT DAILYCLOSE, DAILYCHANGE FROM DAILYQUOTE
WHERE {fn ABS(DAILYCHANGE)} > 5

凡是一种股票价格变化的绝对值大于 5 的列会返回。

ODBC 定义的标量函数的子集受支持。下表列出了受支持的函数。

关于使函数包含于 SQL 语句的变元的描述和逸出语法的详尽解释,请看 ODBC文献。

字符串函数
ASCII LENGTH RTRIM
CHAR LOCATE SPACE
CONCAT LTRIM SUBSTRING
LCASE RIGHT UCASE
LEFT


数字函数
ABS FLOOR SIN
ATAN LOG SQRT
CEILING POWER TAN
COS RAND MOD
EXP SIGN


时间和日期函数
CURDATE DAYOFYEAR MONTH
CURTIME YEAR WEEK
NOW HOUR QUARTER
DAYOFMONTH MINUTE MONTHNAME
DAYOFWEEK SECOND DAYNAME


数据类型变换
CONVERT 字符串文字能被转换成下列数据类型:SQL_FLOAT, SQL_DOUBLE, SQL_NUMERIC, SQL_INTEGER, SQL_REAL, SQL_SMALLINT, SQL_VARCHAR和 SQL_DATETIME.


请参阅
为ODBC 访问配置 Microsoft Jet 数据库引擎
ACMAIN_CHM 2009-11-29
  • 打赏
  • 举报
回复
http://blog.csdn.net/ACMAIN_CHM/archive/2009/01/23/3851269.aspx
JET-SQL 是否支持 ACCESS APP的内建函数 比如 DSUM() ?

7,712

社区成员

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

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