我正在使用ASP.NET开发一个分类网站,而DB则是MYSQL。 我有一个标题表,用于存储广告的常见细节。 所以这是我的头表的数据库模式。
CREATE TABLE `test`.`header` (
`header_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`title` VARCHAR (500) NOT NULL,
`description` VARCHAR (5000) NOT NULL,
`is_published` TINYINT (1) NOT NULL DEFAULT TRUE,
//etc..
PRIMARY KEY (`header_id`)
) ENGINE = INNODB CHARSET = latin1 COLLATE = latin1_swedish_ci ;
所以我使用varchar(500)作为title和varchar(5000)进行描述。那么可以使用varchar 5000吗?我问这个的原因是有些人说长的varchar字段被转换为MYSQL中的Text字段(我不知道这个)。多久多久了?也有人说行大小有限制。那么varchar(5000)字段会导致任何性能问题吗?
是的我可以使用文本字段,但请记住我想要描述的限制。否则用户将复制粘贴小说到描述字段。 :)
你的建议是什么?另一种数据类型或任何......
非常感谢。
答案 0 :(得分:0)
假设5000个字符是你的限制,那么VARCHAR(5000)是完全合理的。
如果您对VARCHAR和TEXT之间的差异感到好奇,请看一下这个问题:MySQL: Large VARCHAR vs. TEXT?。