MySQL UNIQUE – تنظیم دواینستگی ستونها
یاد بگیر چگونه با الگوی اسکریپت MySQL یک ستون را روی UNIQUE تنظیم کنی، از تکرار مقادیر جلوگیری کنی و یک ستون UNIQUE را مستقیماً در نمای جدول شناسایی کنی.
هدف این آموزش
شما یاد میگیرید که چگونه یک ستون پایگاه داده را در CMS بلوترونیکس با UNIQUE بهصورت یکتا تنظیم کنید. با این کار، نمیتوان همان ارزش را در این ستون چندین بار ذخیره کرد.
این کار بهویژه منطقی است اگر در یک جدول آدرسهای ایمیل، شمارههای تلفن یا شمارههای مشتری هرکدام تنها یک بار باید وجود داشته باشند.
وضعیت اولیه بدون UNIQUE
در مثال ما، ما از جدول Contacts با ستونهای ID، Phone و Name استفاده میکنیم. شماره تلفن +49 263 43628376 قبلاً در رکورد Smith وجود دارد.
تا زمانی که ستون Phone بهصورت UNIQUE تنظیم نشده باشد، میتوان همان شماره تلفن را دوباره وارد کرد.
پس از ذخیره، رکورد اضافی وجود دارد. با این کار، شماره تلفنها چندین بار در ستون Phone ظاهر میشوند.
تنظیم دواینستگی ستون با UNIQUE
MySQL - Script را باز کنید و الگوی تنظیم ستون جدول بهصورت یکتا (UNIQUE) را انتخاب کنید. سپس فرمان را به جدول و ستون مورد نظر خود تنظیم کنید.
برای جدول Contacts و ستون Phone در مثال، فرمان زیر استفاده میشود:
ALTER TABLE Contacts ADD CONSTRAINT unique_user UNIQUE (Phone);
پس از اجرا، CMS تحت MySql-Meldung تأیید میکند که فرمان با موفقیت اجرا شده است. ستون Phone بهطور یکتا تنظیم شده است.
تست دوباره مقدار تکراری
اکنون دوباره تلاش میشود تا شماره تلفن موجود +49 263 43628376 بهعنوان یک رکورد جدید ذخیره شود.
از آنجا که ستون اکنون UNIQUE است، همان ارزش نمیتواند دوباره ذخیره شود. بنابراین، هنگام ذخیره، ورودی تکراری رد میشود و یک خطا رخ میدهد.
مهم: UNIQUE مستقیماً در سطح پایگاه داده مانع از وجود مقادیر تکراری میشود. به این ترتیب، یک ارزش که قبلاً در ستون یکتا وجود دارد، نمیتواند دوباره ذخیره شود.
شناسایی ستون UNIQUE در CMS
در نمای جدول، میتوانید با ماوس بر روی ستون مربوطه بروید. در یک ستون UNIQUE، CMS یک پیام نشان میدهد که هر ورودی تنها باید یک بار در این ستون موجود باشد.
موارد استفاده متداول
UNIQUE همیشه زمانی مناسب است که اطلاعات خاصی نباید بهطور دو بار در یک ستون ظاهر شود. مثالهای متداول عبارتند از:
- E-Mail-Adressen bei einem Newsletter
- Telefon- oder Handynummern
- Kundennummern
با این کار، میتوانید در سطح پایگاه داده از ذخیره شدن دوباره همان ارزش یکتا جلوگیری کنید.
خلاصه
با الگوی تنظیم ستون جدول بهصورت یکتا (UNIQUE) میتوانید یک ستون را به گونهای تعیین کنید که هر ارزش تنها یک بار وجود داشته باشد. در این مثال، ستون Phone جدول Contacts به UNIQUE تنظیم میشود. سپس یک ورودی دوباره از همان شماره تلفن در هنگام ذخیره رد میشود. در نمای جدول، CMS در ستون مربوطه همچنین یک پیغام UNIQUE مربوطه نمایش میدهد.
سوالات متداول
چه سوالاتی را مشتریان معمولاً از ما میپرسند
UNIQUE در یک ستون پایگاه داده به چه معناست؟
UNIQUE به این معناست که همان ارزش نمیتواند در این ستون چندین بار ذخیره شود.
از UNIQUE میتوانم برای چه چیزی استفاده کنم؟
UNIQUE برای مقادیری که تنها یک بار باید وجود داشته باشند، مناسب است، مثلاً آدرسهای ایمیل، شمارههای تلفن یا شمارههای مشتری.
کجا میتوانم یک ستون را در CMS بلوترونیکس به UNIQUE تنظیم کنم؟
MySQL - Script را باز کنید و در آن الگوی «تنظیم ستون جدول بهصورت یکتا (UNIQUE)» را استفاده کنید.
کدام فرمان MySQL در این مثال استفاده میشود؟
در آموزش، از ALTER TABLE Contacts ADD CONSTRAINT unique_user UNIQUE (Phone); استفاده میشود.
کدام جدول در این مثال استفاده شده است؟
مثال از جدول Contacts با ستونهای ID، Phone و Name استفاده میکند.
کدام ستون در مثال بر روی UNIQUE تنظیم میشود؟
ستون Phone بر روی UNIQUE تنظیم میشود.
بدون UNIQUE در مورد یک مقدار تکراری چه اتفاقی میافتد؟
بدون UNIQUE میتوان در مثال نشان داده شده، همان شماره تلفن را دوباره ذخیره کرد.
بعد از تنظیم UNIQUE برای یک مقدار تکراری چه اتفاقی میافتد؟
مقدار تکراری هنگام ذخیره رد میشود و خطا رخ میدهد.
چگونه میتوانم در CMS یک ستون UNIQUE را شناسایی کنم؟
زمانی که ماوس را روی ستون مورد نظر میبری، CMS پیام هشداری نشان میدهد که هر ورودی تنها یک بار در این ستون میتواند وجود داشته باشد.
آیا میتوانم برای آدرسهای ایمیل خبرنامه از UNIQUE استفاده کنم؟
بله. این کار به شما کمک میکند تا از ذخیره شدن چندین بار همان آدرس ایمیل در ستون مربوطه جلوگیری کنید.
آیا میتوانم برای شمارههای تلفن از UNIQUE استفاده کنم؟
بله. در آموزش، دقیقاً همین مورد استفاده با ستون Phone نشان داده شده است.
آیا میتوانم برای شمارههای مشتری از UNIQUE استفاده کنم؟
بله. اگر هر شماره مشتری تنها یک بار وجود داشته باشد، UNIQUE مناسب است.
چرا UNIQUE منطقی است؟
UNIQUE به طور مستقیم از وجود مقادیر تکراری در سطح پایگاه داده جلوگیری میکند و بدین ترتیب از ورود مقادیر تکراری در ستون مربوطه جلوگیری میکند.