【发布时间】:2011-01-30 15:46:21
【问题描述】:
在 SqlServer 中我们可以使用 NVarchar(MAX) 但这在 sqlite 中是不可能的。我可以为 Nvarchar(?) 提供的最大大小是多少?
【问题讨论】:
在 SqlServer 中我们可以使用 NVarchar(MAX) 但这在 sqlite 中是不可能的。我可以为 Nvarchar(?) 提供的最大大小是多少?
【问题讨论】:
我可以为 Nvarchar(?) 提供的最大大小是多少?
您不这样做,因为当在 NVARCHAR(?) 中指定时,Sqlite 将忽略超过 255 的任何内容。
相反,在需要NVARCHAR(MAX) 的任何地方使用TEXT 数据类型。
例如,如果您需要一个非常大的字符串列来存储图像的 Base64 字符串值,您可以使用类似以下的内容来定义该列。
LogoBase64String TEXT NULL,
SQLite 并没有真正对字符串的长度实施长度限制。
注意类型后面括号中的数字参数 名称(例如:“VARCHAR(255)”)被 SQLite 忽略 - SQLite 不会 施加任何长度限制(除了大的全局 SQLITE_MAX_LENGTH 限制)字符串、BLOB 或数字的长度 价值观。
【讨论】:
SQLite 没有最大值。您可以插入无限长度的字符串(取决于内存和磁盘空间。)CREATE TABLE 语句中的大小无论如何都会被忽略。
【讨论】: