【问题标题】:What is the maximum size we can give for nvarchar in sqlite?我们可以在 sqlite 中为 nvarchar 提供的最大大小是多少?
【发布时间】:2011-01-30 15:46:21
【问题描述】:

在 SqlServer 中我们可以使用 NVarchar(MAX) 但这在 sqlite 中是不可能的。我可以为 Nvarchar(?) 提供的最大大小是多少?

【问题讨论】:

    标签: sqlite nvarchar max-size


    【解决方案1】:

    我可以为 Nvarchar(?) 提供的最大大小是多少?

    您不这样做,因为当在 NVARCHAR(?) 中指定时,Sqlite 将忽略超过 255 的任何内容。

    相反,在需要NVARCHAR(MAX) 的任何地方使用TEXT 数据类型。

    例如,如果您需要一个非常大的字符串列来存储图像的 Base64 字符串值,您可以使用类似以下的内容来定义该列。

    LogoBase64String TEXT NULL,
    

    SQLite 并没有真正对字符串的长度实施长度限制。

    注意类型后面括号中的数字参数 名称(例如:“VARCHAR(255)”)被 SQLite 忽略 - SQLite 不会 施加任何长度限制(除了大的全局 SQLITE_MAX_LENGTH 限制)字符串、BLOB 或数字的长度 价值观。

    来源www.sqlite.org/datatype3

    【讨论】:

      【解决方案2】:

      SQLite 没有最大值。您可以插入无限长度的字符串(取决于内存和磁盘空间。)CREATE TABLE 语句中的大小无论如何都会被忽略。

      【讨论】:

      • 感谢您的信息。是的,它接受任何大数字。我不知道。谢谢。
      • 但是,全局最大字符串/blob 长度默认为 1,000,000,000 字节 (sqlite.org/limits.html)。
      • 在 windows phone 上,使用 SQL Lite,最大值为 4000。如果您需要更大,那么您可以使用 ntext(尽管我相信这已被弃用,并且可能不会出现在未来的版本中)。跨度>
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-03
      • 1970-01-01
      • 2017-01-28
      • 2010-11-26
      • 2011-03-29
      • 2021-10-10
      • 2014-04-10
      相关资源
      最近更新 更多