zoukankan      html  css  js  c++  java
  • Access里的Case效果 解决“IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败!”问题!

    我用的是access数据库。为了实现数据表里的1表示"通过",0表示"未通过",我在读取数据的时候将数据进行转变!在查询分析器里通过了sql语句:
    select *,Text_Status=case [Value] when 'Name' then '姓名' else 'other' end from CaXun

    将这段语句考到代码里,想用在sql里行得通的语句在access里操作!结果出现了如下错误:IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败!

    上网搜索了一下"E_FAIL",找到这个错误的解决办法:就是将是access的关键字的字段名用"[]"括起来!但是我这个语句里没什么关键字的字段名我没[]起来的啊?!没办法,再找!查"access case",原来在access里是不支持"case"的语句的!郁闷,为什么同是微软的东西,同是sql语句,怎么就不把之变的通用一点呢!?

    后来将"case"语句改用"iif"函数,问题解决了!实现上述效果的sql语句如下:
    select *,iif([Value]='Name', '姓名', 'other') as Text_Status from CaXun

  • 相关阅读:
    函数探幽--引用变量
    函数探幽—内联函数
    我遇到的头文件
    继承的特点
    汇编语言中压栈与入栈
    cin.good(),cin.fail(),cin.clear()
    结构体的处理(以c++primer plus 第六章习题4为例)
    uva508
    uva253 CubePainting
    uva1590
  • 原文地址:https://www.cnblogs.com/yamagl/p/508768.html
Copyright © 2011-2022 走看看