Mengekalkan Auto-Tambahan Semasa Menukar Kunci Utama kepada Memberid
Dalam MySQL, mencipta jadual dengan lajur peningkatan automatik memerlukannya juga ditetapkan sebagai kunci utama. Walau bagaimanapun, dalam kes di mana kunci utama perlu menjadi medan yang berbeza, pengguna mungkin menghadapi ralat "#1075 - Takrif jadual yang salah."
Untuk menyelesaikan isu ini, adalah mungkin untuk mengekalkan lajur peningkatan automatik. (id) semasa membuat memberid kunci utama. Ini boleh dicapai dengan mencipta indeks (kunci) pada lajur id:
CREATE TABLE members ( `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, `memberid` VARCHAR(30) NOT NULL, `time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `firstname` VARCHAR(50) NULL, `lastname` VARCHAR(50) NULL, PRIMARY KEY (`memberid`), KEY (`id`) );
Penyelesaian ini memastikan prestasi jadual kekal dioptimumkan untuk sisipan dan kemas kini berjujukan, kerana lajur id kekal meningkat secara automatik . Sementara itu, pertanyaan boleh mengenal pasti pengguna dengan berkesan dengan memberi mereka.
Dengan menambahkan indeks pada lajur id, MySQL boleh mencari baris dengan cepat menggunakan medan ini, walaupun ia bukan kunci utama. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa prestasi mungkin sedikit perlahan berbanding menggunakan lajur id secara langsung sebagai kunci utama.
Pendekatan ini membolehkan kefleksibelan dalam reka bentuk pangkalan data sambil mengekalkan prestasi yang baik, mengorbankan ruang cakera minimum untuk meningkatkan kebolehgunaan dan pengoptimuman pertanyaan.
Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Peningkatan Auto Semasa Menukar Kunci Utama dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!