代码之家  ›  专栏  ›  技术社区  ›  Cyberherbalist

从Access97 db读取无符号的微小int

  •  0
  • Cyberherbalist  · 技术社区  · 8 年前

    我有一个古老的Access97数据库,其中包含天文数据,我想在望远镜的指向软件中使用这些数据。赤经的小时和分钟被存储为UnsignedTinyInt。

    我假设UnsignedTinyInt是一个unsigned short,或ushort。如果我编写以下代码,其中“reader”是一个OleDbDataReader,fld是序数值。显然,Int16是可用的最短整数。

    select myValue from myTable;
    
    ushort myValue;
    myValue = reader.GetInt16(fld);
    

    确切的异常是无效的强制转换。OleDbDataReader中有许多可用的Get方法,包括三个getInt。无论我如何声明myValue,GetInt都不起作用。

    1 回复  |  直到 8 年前
        1
  •  1
  •   Cyberherbalist    8 年前

    我可以通过以下方式解决此问题:

    select myValue from myTable;
    
    byte myValue;
    myValue = reader.GetByte(fld);