2017-05-28 2 views
1

Ich musste eine Tabelle in meiner Datenbank ändern, so dass die primary key nicht der Standard increments ist.String als Primärschlüssel in Laravel-Migration

Hier ist die Migration,

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

Allerdings hält MySQL mit der Rückkehr

Syntaxfehler oder Zugriffsverletzung: 1170 BLOB/TEXT Spalte 'Code' ohne Schlüssel in Schlüsselspezifikation verwendet Länge (SQL: alte Tabelle settings hinzufügen Primärschlüssel settings_code_primary (code)

Ich habe versucht, die normale incrementsid drin zu lassen und die Tabelle in einer anderen Migration zu ändern, aber das gleiche passiert.

Irgendwelche Ideen, was ich falsch mache?

Laveral Version 5.4.23

Antwort

5

ändern es zu bespannen.

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

Das war es, musste 'Composer Dump-Autoload' auch. Dummer Fehler. Danke noch einmal. – DGeo

Verwandte Themen