Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Tambahkan kolom baru ke tabel yang ada dalam migrasi di Laravel

Jika Anda memeriksa jejak kesalahan:

Ini berarti bahwa tabel pengguna sudah ada sehingga saat Anda menjalankan migrasi, ia mencoba membuat tabel yang sudah dibuat di database Anda.

Catatan: Jangan lupa backup dulu databasenya

Hapus tabel pengguna dari database juga menghapus entri pengguna dari migrasi tabel.

Setelah itu, jalankan perintah Migrasi Artisan:php artisan migrate

Sekarang pertanyaan Anda yang lain adalah:Bagaimana cara menambahkan kolom baru di tabel saya yang sudah ada?

Anda harus membuat tabel menggunakan perintah ini:

php artisan make:migration create_users_table

Output yang Anda dapatkan seperti ini:Created Migration:2019_04_12_070152_create_users_table

Struktur Migrasi Anda adalah seperti ini:

public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
    }

Sekarang Anda ingin menambahkan kolom baru di tabel pengguna yang ada

php artisan make:migration add_phone_number_to_users_table --table=users

gunakan Schema::table() metode (saat Anda mengakses tabel yang ada, bukan membuat yang baru). Dan Anda dapat menambahkan kolom seperti ini:

public function up()
{
     Schema::table('users', function (Blueprint $table) {
         $table->string('phonenumber')->after('name'); // use this for field after specific column.
     });
}

/**
 * Reverse the migrations.
 *
 * @return void
 */
public function down()
{
    Schema::table('users', function (Blueprint $table) {
        $table->dropColumn('phonenumber');
    });
}

Setelah itu, Anda dapat menjalankan migrasi Anda:php artisan migrate

Kolom baru Anda(phonenumber ) sekarang ditambahkan ke tabel pengguna Anda yang sudah ada , yang dapat Anda lihat di database Anda.

Jika Anda masih ragu, lihat video ini



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apakah mungkin untuk mengunggah file dalam tabel database mysql dengan JMeter?

  2. Dua sisipan di PHP/MySQL menggunakan LAST_INSERT_ID() dan baris dari tabel lain

  3. Masalah Kunci Daemon MySQL

  4. Cara Query kolom JSON di MySQL

  5. Bagaimana cara mendapatkan tipe data kolom tabel mysql?