On Mon, Jan 2, 2012 at 12:55 PM, Jonathan Ellis <jbel...@gmail.com> wrote: > On Mon, Jan 2, 2012 at 10:53 AM, Eric Evans <eev...@acunu.com> wrote: >> In SQL, PRIMARY KEY is a modifier to a column spec, and here PRIMARY >> KEY(user_id, posted_at, posted_by) reads like a PRIMARY modifier >> applied to a KEY() function. It's also a little strange the way it >> appears in the grouping of column specs, when it's actually defining a >> grouping or relationship of them (maybe this is what you meant about >> using TRANSPOSED WITH <options> to emphasize the non-standard). > > Fear not, I can set your mind at ease. :) > > Personally I think the syntax works reasonably well in its own right, > but my main reason for the proposed syntax is that it is actually > standard SQL for composite primary keys at least as far back as SQL > 92, as a subcategory of table constraints. The SQL standard is not > freely linkable, but see > http://www.postgresql.org/docs/9.1/static/sql-createtable.html for a > real-world example.
OK, I stand corrected (and my mind is at ease :) ). -- Eric Evans Acunu | http://www.acunu.com | @acunu