最近我在使用MySQL時(shí)遇到了一個問題,就是在寫入type字段的時(shí)候出現(xiàn)了錯誤,無法寫入成功。經(jīng)過一番研究,我發(fā)現(xiàn)了其中的原因和解決辦法。
CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(100) DEFAULT NULL, `type` varchar(10) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
我們可以看到,在創(chuàng)建test表的時(shí)候,有一個type字段,它的類型是varchar(10)。這意味著,該字段的最大長度為10個字符。如果我們想要插入一個長度超過10的字符,就會失敗。
例如:
INSERT INTO `test` (`name`, `type`) VALUES ('Test', 'This is too long');
這個插入操作就會失敗,因?yàn)?this is too long'超過了type字段的最大長度。
解決這個問題的方法是,在創(chuàng)建表的時(shí)候?qū)㈩愋透臑楦蟮膙archar,或者使用text類型。例如:
ALTER TABLE `test` MODIFY `type` varchar(100) DEFAULT NULL;
或者:
ALTER TABLE `test` MODIFY `type` TEXT DEFAULT NULL;
這樣就可以成功寫入更長的字符串了。
上一篇css中的block
下一篇jsp頁面的css格式