Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Melaksanakan Kekunci Utama Penambahan Auto dengan Awalan dalam MySQL?

Bagaimanakah Saya Boleh Melaksanakan Kekunci Utama Penambahan Auto dengan Awalan dalam MySQL?

DDD
DDDasal
2024-12-15 03:18:13513semak imbas

How Can I Implement Auto-Incrementing Primary Keys with Prefixes in MySQL?

Kekunci Utama Auto-Tambah dengan Awalan dalam MySQL

Apabila bekerja dengan jadual MySQL, kadangkala diingini untuk mempunyai kunci utama yang meningkat secara automatik sambil turut menggabungkan yang khusus awalan. Ini amat berguna untuk menyusun dan menjejak data.

Mencapai Auto-Peningkatan dengan Awalan

Untuk mencipta kunci utama dengan kedua-dua kefungsian kenaikan automatik dan awalan, ikut langkah ini:

1. Cipta Jadual Jujukan

Buat jadual berasingan yang akan berfungsi sebagai penjana jujukan:

CREATE TABLE my_sequence (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY);

2. Cipta Jadual Utama

Buat jadual utama di mana anda mahu kunci utama dengan awalan:

CREATE TABLE my_table (
  id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT '0',
  name VARCHAR(30)
);

3. Cipta Pencetus

Gunakan pencetus untuk menjana nilai kunci utama awalan secara automatik selepas dimasukkan ke dalam jadual utama:

DELIMITER $$
CREATE TRIGGER tg_my_table_insert
BEFORE INSERT ON my_table
FOR EACH ROW
BEGIN
  INSERT INTO my_sequence VALUES (NULL);
  SET NEW.id = CONCAT('LHPL', LPAD(LAST_INSERT_ID(), 3, '0'));
END$$
DELIMITER ;

4. Memasukkan Baris

Kini, anda boleh menyisipkan baris ke dalam jadual utama dan memerhatikan kekunci utama yang ditambah secara automatik dengan awalan:

INSERT INTO my_table (name)
VALUES ('Jhon'), ('Mark');

Keputusan Contoh:

| ID | NAMA |

| LHPL001 | Jhon |
| LHPL002 | Tandai |

Nota: Pendekatan ini melibatkan penggunaan jadual jujukan berasingan dan pencetus, yang mungkin bukan penyelesaian paling berkesan untuk senario pemprosesan tinggi. Walau bagaimanapun, ini adalah kaedah yang mudah untuk mencapai kunci utama autokenaikan dengan awalan dalam MySQL.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Kekunci Utama Penambahan Auto dengan Awalan dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn