MySQL创建表语法错误排查:phpMyAdmin无法创建üyeler表
问题分析与解决
你的建表语句存在两个关键语法错误:
- TINYTEXT类型不允许指定长度参数:MySQL中TINYTEXT、TEXT等文本类型自带固定最大存储长度(TINYTEXT上限为255字符),不能像VARCHAR那样在括号内定义长度值。你写的
tinytext(11)、tinytext(50)属于非法语法。 - 额外提示:
BOOLEAN是MySQL中TINYINT(1)的别名,这个写法本身没问题,但如果追求语法严谨性,可以直接使用TINYINT(1)。
修正后的建表语句如下:
CREATE TABLE `üyeler` ( `id` bigint NOT NULL AUTO_INCREMENT, `ad` tinytext NOT NULL, `soyad` tinytext NOT NULL, `KN` varchar(11) NOT NULL UNIQUE, `Eposta` varchar(50) NOT NULL UNIQUE, `Telefon` varchar(11) UNIQUE, `şifre` tinytext NOT NULL, `favori` bigint NOT NULL, `yetki` BOOLEAN NOT NULL DEFAULT 0, PRIMARY KEY (`id`) );
说明:对于需要明确长度限制的字段(KN、Eposta、Telefon),替换为varchar(N)更符合你的需求,也符合MySQL语法规范。如果确实要使用TINYTEXT,直接写tinytext即可,无需添加括号和数字。
内容的提问来源于stack exchange,提问作者norahCii
相关产品推荐
相关产品推荐

