私は、既存のデータベースを更新して、自動インクリメントされた主キーを使用するように取り組んでいます。このDBには現在、カスタム値を持つPKフィールドがあります。最初にautoincフィールドがあるかどうかを調べるために、まず各テーブルをチェックする必要があります。次に、それをドロップして 'id'フィールドに置き換えます。laravelスキーマビルダー、find columnType autoincrement
私はこれをマイグレーションとして行いたいと思いますが、これまでのところ私はこれまでのことですが、最初の列がすでに自動インクリメントされているかどうかを確認できないため、既存のPKを削除して置き換えます。私は、コントローラから次のコードを実行した問題を解決するために
foreach ($tableNames as $name)
if (!Schema::hasColumn($name, 'id')) {
Schema::table($name, function ($table) {
$table->dropPrimary();
$table->increments('id')->first();
});
}
}
'Schema :: getColumnType($ table、$ column) '? – Abrar
@AbrarShariarGalibはい私はそのトラックにいますが、明らかにlaravelにDoctrine/DBALが必要です。私は列リストを取得する必要があると思う最初の列を確認するautoinc – caro
実際に@AbrarShariarGalibそれは単に '整数'と言って、私はそれがautoincrementing int場合は教えていない – caro