What's in a datatype then? A MySQL SMALLINT? A C int? An Oracle
BLOB? One thing is for sure, they are not very well standardized,
not even within the same environment, and much less so across
them. And what does it means, really? When should I use a BLOB,
when a BINARY VARCHAR and when to use a long long?
A datatype defines many attributes:
- What data I can store in it: Only numbers? Printable alaphanumeric characters? Unicode? Binary data? An object?
- What I can do with a value of that particular type and how does it behave? Can I concatenate two values? Add them (that is NOT the same as concatenate! The same operator (+) may be used, but it's not the same thing!)? Save it to a file?
- How is it stored and represented in technical terms. And this can be argued, a C int doesn't define how it is stored on disk, but a MySQL INT does! And a BLOB is a type that is largely there just because it …