注册 登录
编程论坛 ASP.NET技术论坛

一个怪问题

卡卡艾 发布于 2007-10-25 22:18, 501 次点击
不知道这个问题大家遇到过没有?
网上搜了一下,试试了那些方法没有管用.
大家帮忙看看.
运行项目提示:
IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。

使用到SQL语句的是:OleDbCommand cmd = new OleDbCommand("select top 9 id, ('.'+substring(title,0,12)+'...') as title from news where classid=1", con);

错误的提示指在这句上:OleDbDataReader sdr = cmd.ExecuteReader();
(说明:使用的是ACCESS数据库.上面SQL语句没有问题,截取了一下字符串.)
5 回复
#2
卡卡艾2007-10-26 10:24
呵呵,问题解决了。
主要原因还是ACCESS和SQLSERVER里面对语句的支持有些是不一样的。因为之前我是按SQLSERVER来做的,后来临时改成ACCESS数据库,所以问题就出来了。
解决方法如下,写下来,可能以后有人会碰到。
1.ACCESS里不能使用相同的字段名来做别名;
2.ACCESS里截取字符串不是SUBSTRING,而是MID();
3.注意MID()的位置参数,并不是索引,即不是从0开始。
解决办法就是:
SELECT TOP 9 id, ('. '+Mid(title,1,12)+'...') AS ntitle FROM news WHERE classid=1
(不是什么很大的问题,但有的时候往往就是这些小问题绊脚,呵呵。
#3
冰彩虹2007-10-27 08:04
学习了...
#4
guoxhvip2007-10-28 04:45
支持一下卡卡艾
#5
师妃暄2007-10-28 14:29
学习下....
#6
xiaofkg2007-10-30 13:02
小问题大道理
1