创建表时为什么总显示错误

CREATE TABLE IF NOT EXISTS score(
id INT,
kc VARCHAR,
cj FLOAT DEFAULT NULL,
PRIMARY KEY(id,kc)
);

float语法总是显示错误,默认也不行

CREATE TABLE IF NOT EXISTS score(
id INT,
kc VARCHAR(20),
cj FLOAT(10,2) DEFAULT NULL,
PRIMARY KEY(id,kc)
);

img

不报错就奇怪了吧 ,VARCHAR应该也会报错的呀,因为你必须给他进行赋值,不能使用不带长度的,int你可以不带参数,整型默认就是0,但是varchar带参数,且不能等于0,否则将会报错,如图所示

img

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632