>> It's the first KEY definition it doesn't like. If
  >> I comment out "KEY field(field)," it works, except
  >> of course then the field called 'field' is not set
  >> as an index. ...

  Daniel> I'm pretty sure 'field' is a reserved word.

  Daniel> ... My feeling is that MySQL shouldn't allow
  Daniel> reserved words / characters like this,
  Daniel> whether they are in quotes or not. You can
  Daniel> continue to use KEY field(field) if you must
  Daniel> by using the -Q option with mysqldump, to
  Daniel> quote fieldnames. But I wouldn't.

That was indeed the problem. Furthermore, I agree with
your assessment. Using -Q is a kluge to mask
brokenness.

However, I started working in early October for a
company that has a large legacy of data and Perl code
in which certain templates are used. We have fields
named 'field' in tables through our databases. It would
be a tedious, though doable task to fix them all. What
is *not* fixable as easily is the 150,000 lines or so
of Perl code that creates and manipulates this stuff,
or the data itself, in cases where we have columns
whose contents consist of lists of field names, some of
which may include "field". All that stuff would
instantly break for all our clients if we were to start
monkeying with it.

So although I may be annoyed with the programmer who
originally began using the reserved word "field" for
column names back when MySQL was not as picky about it,
at least I have a viable workaround for now.

I also added -Q to the call to mysqldump in my database
backup script.

Thank you to those who responded. You've been very
helpful.

-- 
Lynn David Newton
Phoenix, AZ

---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to