OCCI读取64bit无符号整型的问题

linfengc 2009-04-30 05:48:52
数据库字段定义的是INTEGER,实际大小会超过32bit无符号整数,怎么读呢?
用getNumber读后,用static_cast<unsigned long>转换不行(值不对),
用getString读直接报错,
用getNumber后,想再用Number的toText方法转成string,但是不知道toText怎么用。
toText(Environment*, string& format_str, string& oth),不知道那个格式化字符串应该怎么写,写成%s,%d,%u,%u64等等都不行,报的错是 不匹配[%s]...

但是这个字段写数据时,
UINT64 u64_var = 66666666666;
用setNumber(index,static_cast<unsigned long>(u64_var));是可以写进数据库的。

奇了怪了。。
...全文
283 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
linfengc 2009-05-04
  • 打赏
  • 举报
回复
不好意思,是我自己搞错了:
用getNumber读后,用static_cast <unsigned long>转换是对的。。。。。
只是我用printf的%u64等等格式化打印的时候是错的。。
直接cout就正常了。。
哎呀,还搞了老久,浪费了。。。。
linfengc 2009-05-02
  • 打赏
  • 举报
回复
顶起。
liliangbao 2009-05-01
  • 打赏
  • 举报
回复
帮顶~~~
linfengc 2009-04-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 qqwx_1986 的回复:]
64位无符号应该是 unsigned long long 等价于 unsigned __int64 (vc中)
[/Quote]
我是linux64bit环境下,long是8字节,用unsigned long long异常
linfengc 2009-04-30
  • 打赏
  • 举报
回复
开工了试试楼上的方法
datacodebugs 2009-04-30
  • 打赏
  • 举报
回复
貌似是 "%llu" 或 "%llx" 转换
qqwx_1986 2009-04-30
  • 打赏
  • 举报
回复
64位无符号应该是 unsigned long long 等价于 unsigned __int64 (vc中)
  • 打赏
  • 举报
回复
。。帮顶

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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