mysql - can I set VARCHAR default value as NULL?
-
25-09-2019 - |
문제
In mysql, i tried changing an existing table like this:
ALTER TABLE `etexts` CHANGE `etext` `etext` VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT NULL
I got the response:
#1067 - Invalid default value for 'etext'
Why?
해결책
It's contradictive... NOT NULL
, but make it default NULL
...
Remove DEFAULT NULL
and change NOT NULL
to NULL
:
ALTER TABLE `etexts` CHANGE `etext` `etext` VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL;
다른 팁
You can't have a NOT NULL column defaulting to NULL.
If you want it to be NULLable then
... COLLATE latin1_swedish_ci NULL
NULLABLE columns will default to NULL automagically if no value is provided for the column
제휴하지 않습니다 StackOverflow