2017-05-28 2 views
1

J'ai dû modifier une table dans ma base de données afin que le primary key ne soit pas le standard increments.Chaîne en tant que clé primaire dans la migration Laravel

est ici la migration,

public function up() 
{ 
    Schema::create('settings', function (Blueprint $table) { 
     $table->text('code', 30)->primary(); 
     $table->timestamps(); 
     $table->text('name'); 
     $table->text('comment'); 
    }); 
} 

Cependant, MySQL revient toujours avec

violation d'erreur de syntaxe ou d'accès: 1170 colonne BLOB/TEXT 'code' utilisé dans spécifications sans une clé longueur (SQL: alter table settings ajouter la clé primaire settings_code_primary (code)

J'ai essayé de laisser la normale incrementsid et de modifier la table dans une migration différente, mais la même chose se produit.

Des idées de ce que je fais mal?

Laveral Version 5.4.23

Répondre

5

changement à chaîne.

$table->string('code', 30)->primary(); 
+0

Il en était de même pour 'composer dump-autoload'. Erreur stupide. Merci encore. – DGeo