我在mysql中创建了db表。
create table finaltest1(id int(10),title text(20), category text(20), price text(10), ymd text(15), iconurl text(50), screenshoturl text(150), appid text(15), company text(30), capacity text(15));
但是文本列的长度都是0.为什么?
答案 0 :(得分:1)
如果您希望使用字段限制文本,则使用数据类型VARCHAR(20)。另外,对于长文本,只使用TEXT数据类型。
检查:http://www.htmlite.com/mysql003.php
你给出的长度20来自TINYTEXT。
TINYTEXT 256 bytes
TEXT 65,535 bytes ~64kb
MEDIUMTEXT 16,777,215 bytes ~16MB
LONGTEXT 4,294,967,295 bytes ~4GB
答案 1 :(得分:1)
正如swati所说,你需要学习MySQL String Data Types。如果使用TinyText,该列将始终占用256个字节,即使它是空的。您应该注意,使用* Text列类型时,您不能使用默认值。
如果使用VARCHAR(20)列,则使用的实际数据空间取决于内容,您可以使用默认值。
答案 2 :(得分:0)
text
不需要长度。从documentation了解详情。
以下查询应该有效。
create table finaltest1(id int(10),
title text,
category text,
price text,
ymd text,
iconurl text,
screenshoturl text,
appid text,
company text,
capacity text
);