SQL String Data 字符串数据

SQL 里表示文本的数据类型。

常见类型

类型特征用途
CHAR(N)定长,不足补空格长度固定的字符串(国家代码 “AU”)
VARCHAR(N)变长,最长 N 字符大部分字段(姓名、email)
TEXT变长,可以很长长文本(文章、日志)
BLOB二进制图片、附件(不推荐)

关键

  • 长度限制要合理 —— 太短会截断,太长浪费索引空间
  • TEXT 不能完全建索引 —— 长文本搜索用全文索引(FULLTEXT)或单独的搜索引擎(Elasticsearch)
  • 字符集 —— UTF-8 / utf8mb4(支持 emoji 和中文)是默认推荐

安全注意

  • 用户输入存进 string 字段前,不要预处理转义 —— 那是 query 时 parameterized 的责任
  • 否则数据存进去是脏的,查出来也是脏的