C# SQLite中为字符串分配了多少空间?
在SQLite中,C# SQLite中为字符串分配了多少空间?,c#,.net,sqlite,windows-8,microsoft-metro,C#,.net,Sqlite,Windows 8,Microsoft Metro,在SQLite中, 对于字段长度为25个字符的对象,它会为25个字符占用空间,还是总是为字段的MaxLength获取空间?SQLite,与大多数其他具有VARCHAR类型的数据库一样,只存储输入到列中的实际字符 还请注意,SQLite没有列长度,您可以在列中输入任何支持长度的字符串。为什么您想知道这一点?对于大多数条目,字段长度最多为25个字符,而对于某些条目,字段长度可能会更高。如果占用的空间仅取决于字段长度(而不是MaxLength)我没有什么可担心的,否则我将不得不在单独的表格中存储长度更
对于字段长度为25个字符的对象,它会为25个字符占用空间,还是总是为字段的MaxLength获取空间?SQLite,与大多数其他具有VARCHAR类型的数据库一样,只存储输入到列中的实际字符
还请注意,SQLite没有列长度,您可以在列中输入任何支持长度的字符串。为什么您想知道这一点?对于大多数条目,字段长度最多为25个字符,而对于某些条目,字段长度可能会更高。如果占用的空间仅取决于字段长度(而不是MaxLength)我没有什么可担心的,否则我将不得不在单独的表格中存储长度更大的条目。谢谢你的回答。我还有一个问题,如果SQLite没有列长度,那么为什么我们需要提供MaxLength?
class anyClass
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
[MaxLength(100)]
public string field { get; set; }
}