[development] Adding auto-increment to an existing table
    Sascha Grossenbacher 
    saschagros at gmail.com
       
    Fri Sep 24 20:29:24 UTC 2010
    
    
  
Hi
On Fri, Sep 24, 2010 at 10:02 PM, nan wich <nan_wich at bellsouth.net> wrote:
> user warning: Incorrect table definition; there can be only one auto column
> and it must be defined as a key query: update_sql /* admin : update_sql */
> ALTER TABLE client_activity ADD `id` INT auto_increment DEFAULT NULL in
> C:\www\webapps\drupal6\includes\database.mysql-common.inc on line 298.
Try using the $new_keys argument of db_change_field() to create the
primary key at the same time. If that doesn't work either (possible if
it does it in a separate query), then do not remove the primary key
before making the field autoincrement.
Also, if you need to do that and this code needs to run on PostgreSQL
too, then you need to make it conditional and only remove/re-add the
key for PostgreSQL.
Sascha
    
    
More information about the development
mailing list