我已经在MSDN论坛和这里读到了这个,我还不清楚.我认为这是正确的:Varchar(max)将存储为文本数据类型,因此存在缺陷.因此,假设您的字段可靠地低于8000个字符.像我的数据库表中的BusinessName字段.实际上,商业名称可能总是在(从我的帽子里拿出一个数字)500个字符.看起来我运行的大量varchar字段远低于8k字符数.
那么我应该将该字段设为varchar(500)而不是varchar(8000)吗?根据我对SQL的理解,这两者之间没有区别.因此,为了简化生活,我想将所有varchar字段定义为varchar(8000).这有什么缺点吗?
相关:varchar列的大小(我不觉得这个回答了我的问题).
使所有Sql Server 2008字符串列varchar(max)有问题吗?我允许的字符串大小由应用程序管理.数据库应该坚持我给它的东西.通过在Sql Server 2008中将所有字符串列声明为varchar(max)类型,无论实际进入它们的数据大小如何,我都会受到性能影响吗?
如何增加char数据类型为的列的长度mysql?
以下查询
ALTER TABLE tablename ALTER COLUMN columnname varchar(30) not null;
Run Code Online (Sandbox Code Playgroud)
不管用.
请指出我的错误.谢谢