如題
剛要變更資料表結構時候,發生了這個錯誤…
練習著習慣 Laravel 的 Migration 資料遷移機制(因為有資料庫版控)
剛建好表,嗯嗯!正常 … 啊~忘了加上可以 null 值,於是正好練習寫 migration change()
另註. change 必須依賴 DBAL 包,所以先 composer require 進來吧(會有點慢跟卡,不是當機喔)
composer require doctrine/dbal
寫好
$table->string('name', 255)->nullable(true) ...
後,執行 migrate … 噹噹~人總是在意外中學習阿~~
Doctrine\DBAL\DBALException : Unknown database type enum requested .....
這個 DBALException 的錯誤,大致上是講不支援 enum 資料形態(因為該表我有用到 enum )
查找了一下資料,因為 migration change 依賴 DBAL套件 ,但 DBAL 似乎不支援 enum 形態,需要另外註冊
所以填入註冊方式後就可以用了
在 function up() 內加上後,重新 migrate 就 OK 囉!
Schema::getConnection()->getDoctrineSchemaManager()->getDatabasePlatform()->registerDoctrineTypeMapping('enum', 'string');