Michel :
>     create_table :player  do |t|
>       t.column :id,              :integer
>       t.column :login,           :string,    :null => false
>       t.column :password,        :string,    :null => false, :limit => 32
>       t.column :email,           :string,    :null => false
>       t.column :joined,          :datetime
>       t.column :lastup,          :timestamp
>       t.column :online,          :boolean
>     end
>
> Je lance la migration, après quelques corrections dans ma configuration, je
> bloque sur :
>
> == RubyThud: migrating
> ========================================================
> -- create_table(:player)
> rake aborted!
> Mysql::Error: #42000You have an error in your SQL syntax; check the manual
> that corresponds to your MySQL server version for the right syntax to use
> near '(11), `login` varchar(255) NOT NULL, `password` varchar(32) NOT NULL,
> `email` va' at line 1: CREATE TABLE player (`id` int(11) DEFAULT NULL
> auto_increment PRIMARY KEY(11),

create_table va te créer automatiquement une clé primaire id
sauf si tu lui spécifie de ne pas le faire (:id => false). Or
tu as également déclaré une colonne id.

Rails va te générer le `id` int(11) DEFAULT NULL auto_increment PRIMARY KEY
ta déclaration supplémentaire va rajouter le (11). D'où la belle
erreur de syntaxe MySQL.

> Quelqu'un sait ? C'est un bug de rake ? Si oui il y a eu une correction ?

D'autre part, si tu peux/souhaites suivre les conventions de
Rails, le nom de ta table sera 'players'.

    -- Jean-François.

-- 
À la renverse.

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Répondre à