哪个更有效率,INTEGER或一个字符TEXT?

时间:2017-04-15 18:13:25

标签: android sqlite

假设我有一个带有4个选项的微调器,用户可以从中选择:

  • 苹果,
  • 香蕉,
  • 克莱门,
  • 火龙果。

我需要将该选项存储在SQLite数据库的表中。我可以为这些选项分配值0,1,2,3或字母a,b,c,d。

问题是,就空间而言,最好是创建一个数据类型为INTEGER的列并在其中存储数字?如果我将列定义为TEXT并在其中存储一个字符值,它会产生很大的不同吗?

编辑:我打算将存储在Android设备上的这个SQLite数据库中的数据上传到位于服务器上的PostgreSQL数据库,相应的列有Char(1)数据类型。我是否应该更改那个的类型,或者在根据SQLite表中的行向PostgreSQL表插入新行时,以某种方式在let和's'和'c'之间进行转换很容易?

1 个答案:

答案 0 :(得分:1)

SQLite file format中,值01需要比23'a'少一个字节,... ,'d'

但是,在移动设备上,您将永远不会有足够的数据来判断差异。 使用最容易处理的任何内容。