varchar字段大小问题

时间:2011-07-03 22:21:08

标签: iphone sqlite

我有一个sqlite3表。其中一列是varchar(12)。

问题:

我正在保存一个没有长度限制的字符串值(NSString *)。但是后端sql表列是varchar(12)。

示例:

"Hello world, how are you today?" // this is well beyond the size of a varchar(12)

我所看到的:

  1. 我将这个非常长的字符串保存到表格中。
  2. 我重启了应用。
  3. 我注意到从表中查询的字符串值是完整的字符串值(它没有像我期望的那样被截断为12个字符)。
  4. 问题:

    为什么字符串不被截断?即使表中的下一个字段似乎保持其正确的值(似乎没有任何内存溢出)。

1 个答案:

答案 0 :(得分:1)

请参阅sqlite FAQ。具体来说,它指出(问题9)VARCHAR的长度被忽略,你总是可以在一个中放入500个字符。