Why are BOOLEAN type columns problematic in relational database design?

derby, mysql, oracle, sql

Solution

Tom Kyte pretty much echoes your last sentence in this blog entry:

"It just isn't a type we have -- I can say no more and no less. ANSI doesn't have it -- many databases don't have it (we are certainly not alone). In the grand scheme of things -- I would say the priotization of this is pretty "low" (thats my opinion there)."

He's speaking from the Oracle perspective, but it applies to any relational RDBMS.

Problem

I've been working mostly with Oracle for the past few years, and am quite used to seeing single character varchar columns used as boolean values. I can also see (per stack overflow answers), that suggested type for MySQL is TINYINT. Now I've taken on my little side project - using DerbyDB, and it supports BOOLEAN columns, but not until after version 10 or so. So, the question is, why is it so hard to incorporate a BOOLEAN column while designing a relational database? Am I missing something, or is it just pushed down the to-do list as unimportant, since you can use another column type meanwhile?

Original source