我想将应用程序的版本号存储在MySQL数据库中,例如:
version1.1.01.1.11.1.2
我应该使用哪种数据类型。

最佳答案

您有2个选择:

  • 使用varchar
  • 使用三个数字字段,Major,Minor,Patch
  • 同时使用。

  • 每个选项都有其优点和缺点。

    选项1只是一个字段,因此很容易获得版本。但这不一定是可排序的,因为从字典上讲2.0.0将高于10.0.0。

    选项2可以轻松排序,但是您必须获得三个字段。

    选项3可以使用以下 View 实现:
    Table tversion (
      major NUMBER(3),
      minor NUMBER(3),
      patch NUMBER(3)
    )
    
    View vversion is
      select major || '.' || minor || '.' || patch AS version,
             major * 1000000 + minor * 1000 + patch AS sortorder from tversion;
    

    07-27 13:42