rust对于不定长和不定类型的数据处理?

目前我在写一个mariadb的驱动,但是碰到了一个问题。

mariadb的对于查询的数据返回分为了两部分:
1.每个字段的类型,类似于[i32, String]
2.以String表示的每个字段的值["1", "alpha"]

我希望把2中String表示的字段值转换成1中特定数据类型,但是由于每个查询的字段数和字段类型都是不定的,请问这个大概需要怎么做。

烦请各位大佬指一下方向,谢谢。

阅读 1.2k
1 个回答

这种建议参考一下其他类库,如MySQL。

https://docs.rs/mysql/latest/mysql/enum.Value.html

pub enum Value {
    NULL,
    Bytes(Vec<u8>),
    Int(i64),
    UInt(u64),
    Float(f32),
    Double(f64),
    Date(u16, u8, u8, u8, u8, u8, u32),
    Time(bool, u32, u8, u8, u8, u32),
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进