Mysql From enum to tinyint problems
I've got a table with
`terms_of_payment` enum('0','1') NOT NULL DEFAULT '0' COMMENT ''
I run
ALTER TABLE `customer`
CHANGE `terms_of_payment` `terms_of_payment` TINYINT( 1 )
NOT NULL DEFAULT 0 COM开发者_如何学CMENT '';
and I found all my customers (with '0' value) set to 1 when I'm waiting 0
Could you explain me, what's the trouble, please ?
Bye
Converting the ENUM
to TINYINT
might give unexpected results, as MySQL will actually already store your ENUM
in the form of integers. To get the result you want, you should actually start by converting your column to a CHAR(1)
and then go to TINYINT(1)
.
精彩评论