【问题标题】:can Mysql or sqlite Blob data type store varchar data in it?Mysql 或 sqlite Blob 数据类型可以在其中存储 varchar 数据吗?
【发布时间】:2010-11-16 14:03:27
【问题描述】:

谁能提供有关我们是否可以将普通文本数据(varchar)存储在 mysql 或 sqlite Blob 数据类型中的任何信息

【问题讨论】:

    标签: mysql sqlite save blob character


    【解决方案1】:

    您可以将任何二进制数据存储在 blob 中。这将包括 ascii 和 unicode 文本。但是,您需要在代码中将其明确解释为文本,因为 SQL 接口不知道其二进制字段中存储的数据类型。

    为什么要使用它而不是普通的 varchar 或文本字段?

    【讨论】:

    • 谢谢。我想这样做,因为我想存储在一列中的数据可以通过应用程序作为 img 或普通文本进入 db。
    • 那么你可能应该有两个可为空的字段;一种用于图像数据,一种用于文本。如果数据带有图像标题,则将其存储在 blob 字段中,如果以文本形式出现,则将其存储在文本字段中。不要让列尝试存储一种以上类型的数据!
    【解决方案2】:

    一个 BLOB 只是一堆字节——以任何方式处理它们都没有障碍没有帮助;已知 VARCHAR 是文本,因此字符编码和排序规则等内容开始发挥作用。因此,将字节串(例如图像)存储为 BLOB,将文本串存储为 TEXT 或 VARCHAR!

    【讨论】:

      【解决方案3】:

      在 mysql 中,您可以在 blob 数据类型中插入 text/varchar。

      blob 可以支持二进制数据。这意味着mysql中也支持非二进制或二进制数据。

      text/varchar 可以被索引,但不能用于 blob。

      进一步阅读here

      【讨论】:

        【解决方案4】:

        SQLite 使用manifest typing,因此实际上您可以将任何类型的数据放在任何类型的列中。然后你必须自己解释返回的数据,就像每个人都指出 MySQL 一样。

        【讨论】:

          猜你喜欢
          • 2021-09-18
          • 1970-01-01
          • 2016-09-05
          • 1970-01-01
          • 2012-11-12
          • 1970-01-01
          • 1970-01-01
          • 2014-05-23
          • 2019-05-30
          相关资源
          最近更新 更多