در MySQL یک جدول به نام users بسازید که ستون id به‌عنوان کلید اصلی از نوع BINARY(16) باشد و مقدار پیش‌فرض آن با استفاده از تابع سیستم UUID() (از طریق UUID_TO_BIN) به‌صورت خودکار تولید شود.

2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:07

0.0

برای حل این مسئله از دستور CREATE TABLE در MySQL استفاده کنید و برای تولید مقدار یکتا از توابع سیستمی UUID() و UUID_TO_BIN(UUID()) به‌عنوان DEFAULT بهره ببرید؛ مثلاً id BINARY(16) NOT NULL PRIMARY KEY DEFAULT (UUID_TO_BIN(UUID())). هنگام نمایش شناسه‌ها از تابع BIN_TO_UUID(id) استفاده کنید. نکته: ذخیره UUID در BINARY(16) فضای کمتری می‌گیرد و ایندکس‌ها بهتر عمل می‌کنند؛ اگر خواستید ساده‌تر عمل کنید می‌توانید از CHAR(36) با DEFAULT UUID() استفاده کنید.

توسط پژوهشگر در 220 روز قبل ساعت 02:07
دسته بندی ها: MySQL MySQL for beginner
arash در 220 روز قبل ساعت 10:55

استفاده از ستون id از نوع BINARY(16) با DEFAULT (UUID_TO_BIN(UUID())) برای کلید اصلی کارآمد است چون فضای کمتری اشغال می‌کند و ایندکس‌ها سریع‌تر عمل می‌کنند. برای بهبود محل قرارگیری داده‌های UUID در ایندکس، می‌توانید از UUID_TO_BIN(UUID(), true) استفاده کنید تا ترتیبی که ایندکس می‌بیند بهینه‌تر باشد. هنگام نمایش، از BIN_TO_UUID(id) استفاده کنید تا UUID استاندارد به کاربر نمایش داده شود. اگر می‌خواهید کار را ساده‌تر کنید، می‌توانید از CHAR(36) با DEFAULT UUID() استفاده کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری