Rumah  >  Soal Jawab  >  teks badan

php - Bagaimanakah pangkalan data menentukan sama ada sekeping data telah diubah suai?

A dan B mengakses set data pada halaman yang sama pada masa yang sama A telah mengubah suai salah satu halaman B belum dimuat semula, jadi maklumat yang dilihat oleh B adalah sebelum A mengubahnya perlu mengubah suai data ini. Bagaimana saya boleh mengingatkan B bahawa data ini telah diubah suai

Saya melihat cara untuk mengetahui data berdasarkan masa pengubahsuaian terakhir sebelum mengubah suai data (pilih * daripada xxx di mana masa kemas kini = xxx dan id= xxx Jika ia tidak ditemui, ia bermakna ia telah diubah suai ditemui, bermakna ia telah diubah suai.

Saya ingin bertanya adakah cara yang lebih baik?

大家讲道理大家讲道理2635 hari yang lalu1530

membalas semua(7)saya akan balas

  • typecho

    typecho2017-07-07 10:37:07

    Saya masih ingat bahawa penguncian optimistik dalam hibernate dilaksanakan menggunakan medan nombor versi Selepas setiap kemas kini berjaya, nilai medan nombor versi ditambah sebanyak 1.
    Sebelum mengemas kini, semak dahulu sama ada nombor versi dalam pangkalan data dan versi. nombor yang disimpan dalam halaman adalah sama , jika nombor versi menjadi lebih besar, pengguna digesa bahawa pengguna lain telah mengubah suai data semasa mengedit.

    Sudah tentu, anda juga boleh menggunakan penguncian pesimis Apabila memasuki halaman, gunakan pilih... untuk kemas kini untuk mengunci rekod Pada masa ini, pengguna lain tidak boleh mengedit rekod terkunci pada masa yang sama.

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-07-07 10:37:07

    Saya akan melakukan ini - tambah medan, edit_num, +1 untuk setiap perubahan dan bandingkannya apabila B perlu ditukar.

    balas
    0
  • 黄舟

    黄舟2017-07-07 10:37:07

    Kunci Optimis Kunci Optimis Kunci Optimis

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-07-07 10:37:07

    Mekanisme penguncian yang optimistik dilaksanakan dengan menambahkan medan versi pada data

    balas
    0
  • 大家讲道理

    大家讲道理2017-07-07 10:37:07

    Tambah medan pada jadual dataupdate_at类型为TIMESATMP,默认值为CURRENT_TIMESTAMP, tidak perlu menukar yang lain
    Setiap kali data dikemas kini, nilai akan dikemas kini secara automatik

    balas
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-07 10:37:07

    Tambah medan versi pada data ini Nombor versi bermula dari 0 secara lalai Ia akan meningkat secara automatik jika ia tidak diubah suai.

    balas
    0
  • 为情所困

    为情所困2017-07-07 10:37:07

    Tambah medan nombor versi pada jadual xxx

    balas
    0
  • Batalbalas