[development] type(N) in MySQL numeric type defs in core schema
useless
Chris Johnson
chris at tinpixel.com
Fri Aug 18 17:21:44 UTC 2006
Sammy Spets wrote:
> Hi all,
>
> I'm going through the core database code (as part of my role as
> PostgreSQL maintainer) and have stumbled upon an interesting tidbit.
>
> The use of (N) declarations for integer types in CREATE TABLE statements
> is useless. From the MySQL manual:
>
> "Another extension is supported by MySQL for optionally specifying the
> display width of an integer value in parentheses following the base
> keyword for the type (for example, INT(4)). This optional display width
> specification is used to left-pad the display of values having a width
> less than the width specified for the column.
>
> The display width does not constrain the range of values that can be
> stored in the column, nor the number of digits that are displayed for
> values having a width exceeding that specified for the column."
>
> Given that, why on earth are we even using them? I propose to strip the
> (N) declaration from core schema files. It'll provide a much quicker
> path between MySQL and PostgreSQL declarations.
Agreed. They are not needed.
The closer we can make database declarations to standard SQL and to a common
denominator between MySQL and Postgres, the easier our job of supporting
multiple databases will be.
More information about the development
mailing list