我使用的是版本11.2,并且表字段中没有对uint64的直接支持。您建议按性能做什么?它必须是主键。
由于
答案 0 :(得分:1)
可能将它转换为char,然后将其作为char插入,使用to_number将其插入正确的格式?
答案 1 :(得分:1)
我对Oracle一无所知,但MS SQL受到类似的困扰,最后我将我的64位无符号整数存储在二进制(8)字段中。如果Oracle有类似的字段上限(我无法想象它没有),也许这对你有用。
SQL Server上的结果是二进制(n)字段与其他二进制(n)字段相比有效地比较为字节数组,如果大小相同,则意味着它们也比较为大端表示(如果这是如何你存储了它们,你会坚持不去。)
对不起我不熟悉甲骨文。要和那个带来ya =)的那个跳舞。
答案 2 :(得分:1)
我正在使用RAW(8)数据类型,并使用以下命令编写:
uint64 i;
Bytes key((unsigned char*)&i, 8);
statement->setBytes(1, key);
快速而紧凑,似乎运作良好。