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

Apakah ada fitur MySQL seperti kolom TIMESTAMP SQL Server?

Saya tidak yakin saya mengerti mengapa ini tidak berhasil untuk skenario Anda. Apakah TIMESTAMP dijamin unik di MS SQL Server?

Aha -- Saya melihat di SQL Server stempel waktu adalah sinonim untuk rowversion yang seperti AUTO_INCREMENT MySQL kecuali itu menghasilkan nilai baru yang meningkat secara monoton pada UPDATE serta pada INSERT .

Tidak, MySQL tidak memiliki yang seperti ini. MySQL juga tidak mendukung SEQUENCE objek seperti Oracle atau PostgreSQL atau IBM DB2. Urutan akan memungkinkan Anda untuk menghasilkan nilai baru dari pemicu, misalnya.

Saya membaca info terbaru Anda dalam pertanyaan Anda, jadi saya memahami masalah yang Anda coba selesaikan.

Apa yang saya lihat sebagai solusi alternatif adalah menambahkan atribut lain di tabel yang sedang Anda proses, sebut saja is_processed atau sesuatu. Masukkan NULL saat Anda menyisipkan baris baru. Saat Anda mulai memprosesnya, ubah nilai di kolom itu menjadi 1. Kemudian Anda akan selalu tahu baris mana yang belum Anda proses -- baris tersebut akan menjadi baris di mana is_processed IS NULL .

Re komentar Anda:Oke, saya melihat masalahnya. Setiap pengguna membutuhkan pandangan mereka sendiri tentang baris mana yang baru/diubah.

Peretasan lain yang saya lihat digunakan di MySQL untuk mensimulasikan objek urutan adalah tabel yang berisi kunci utama peningkatan otomatis dan tidak ada yang lain. Anda dapat menghasilkan nilai unik baru yang meningkat secara monoton dengan menyisipkan ke dalam tabel ini, lalu memutar kembali sisipan.

CREATE TABLE sequence (id SERIAL) ENGINE=InnoDB; -- Must be InnoDB

START TRANSACTION;
INSERT INTO sequence () VALUES (); -- Yes this is a legal statement.
ROLLBACK;

SELECT LAST_INSERT_ID();

Anda tidak dapat memulai dan mengembalikan transaksi dalam pemicu MySQL, jadi Anda harus membuat nilai baru dalam kode aplikasi Anda.

Atau Anda dapat beralih ke PostgreSQL, dan mendapatkan dukungan nyata untuk sequence.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. bagaimana menghubungkan ke database di server lain

  2. Sorot teks pencarian di pencarian php mysql

  3. Menghubungkan Visual COBOL ke MySQL

  4. Terhubung ke MySQL dari jarak jauh dengan Python mysql.connector

  5. Skema basis data MySQL hash