Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Awalan Kekunci Utama Auto-Incrementing dalam MySQL?

Bagaimanakah Saya Boleh Awalan Kekunci Utama Auto-Incrementing dalam MySQL?

Linda Hamilton
Lepaskan: 2024-12-14 00:45:17
asal
880 orang telah melayarinya

How Can I Prefix Auto-Incrementing Primary Keys in MySQL?

Mengawalan Kekunci Utama Penambahan Auto dalam MySQL

Sebagai pentadbir pangkalan data, anda mungkin menghadapi situasi di mana anda ingin memberi awalan auto- anda menambah kunci utama dengan nilai tertentu. Dalam panduan ini, kami akan meneroka penyelesaian menggunakan jadual penjujukan yang berasingan dan pencetus.

Mencipta Jadual Penjujukan

Pertama, buat jadual untuk menjana nilai jujukan :

CREATE TABLE table1_seq (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
Salin selepas log masuk

Mencipta Utama Jadual

Seterusnya, buat jadual utama anda dengan lajur kunci utama menggunakan jenis VARCHAR dan nyatakan nilai lalai '0':

CREATE TABLE table1 (
  id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT '0',
  name VARCHAR(30)
);
Salin selepas log masuk

Pencetus untuk Prefixing Kunci Utama

Untuk menetapkan nilai awalan bagi kunci utama, buat pencetus yang menyala sebelum setiap operasi sisipan pada jadual utama:

DELIMITER $$
CREATE TRIGGER tg_table1_insert
BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
  INSERT INTO table1_seq VALUES (NULL);
  SET NEW.id = CONCAT('LHPL', LPAD(LAST_INSERT_ID(), 3, '0'));
END$$
DELIMITER ;
Salin selepas log masuk

Memasukkan Data ke dalam Jadual Utama

Kini, anda boleh memasukkan data ke dalam jadual utama tanpa menyatakan kunci utama nilai. Pencetus akan secara automatik menjana dan menetapkan awalan ID:

INSERT INTO Table1 (name) 
VALUES ('Jhon'), ('Mark');
Salin selepas log masuk

Output

Setelah memasukkan data, jadual akan memaparkan rekod berikut dengan kunci utama awalan:

|      ID | NAME |
------------------
| LHPL001 | Jhon |
| LHPL002 | Mark |
Salin selepas log masuk

SQLFiddle Demonstrasi

Untuk demonstrasi praktikal, anda boleh rujuk demo SQLFiddle di sini: [pautan]

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

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan