Since MySQL doesn't seem to have any 'boolean' data type, which data type do you 'abuse' for storing true/false information in MySQL?
Especially in the context of writing and reading from/to a PHP script.
Over time I have used and seen several approaches:
- tinyint, varchar fields containing the values 0/1,
- varchar fields containing the strings '0'/'1' or 'true'/'false'
- and finally enum Fields containing the two options 'true'/'false'.
None of the above seems optimal. I tend to prefer the tinyint 0/1 variant, since automatic type conversion in PHP gives me boolean values rather simply.
So which data type do you use? Is there a type designed for boolean values which I have overlooked? Do you see any advantages/disadvantages by using one type or another?
deleted
flag on a message table, i useDATE NULL
, so i can already use it to store the date it was deleted. – Studdardbit(1)
's a bit** to import in Excel. Switching totinyint(1)
works. – Omniis_
. For exampleis_uploaded
. My object model knows then that it should evaluate it to boolean. – Tucket