如何存储一系列数字(或其他一组中的字符序列)?

时间:2017-06-23 16:18:24

标签: mysql sql digit alphabet

我想保存一些数字序列,可以是数字(例如12345,1230)或不是(例如00123,0120)。为此目的,哪种类型的列最有效(通过内存,通过索引速度)?

另外,我需要存储来自特定字母的字符串(例如"数字和逗号"或"数字和英文字母和点和逗号")。如何有效地做到这一点?

我可以对列的CHAR / VARCHAR类型设置限制以减少占用的内存大小吗?

2 个答案:

答案 0 :(得分:0)

这与任何暗示varchar / text类型的字符串列没有区别。

VARCHAR(n)动态处理存储。

Reference here

对于约束允许的符号,您可以使用CHECK约束,但它们在MySQL中不起作用,因此解决方法是使用触发器并在那里定义接受的字符。 See this question. 您可以使用REGEXP函数来定义允许的字母。

答案 1 :(得分:0)

对于sql,您可以使用

  

varchar()如果您使用POSTgreSQL就可以使用某些东西   称为citext