۲ مطلب با کلمه‌ی کلیدی «CHECK CONSTRAINT» ثبت شده است

قاعده CHECK

قاعده‌ی ارزیابی برای کنترل صحت داده‌های وارد‌شده به داخل یک فیلد از جدول، مورد استفاده قرار می‌گیرد. این قاعده با برقراری شرایط روی تعدادی از فیلد‌های یک جدول، همانند یک سد محافظ عمل می‌کند. این قاعده با عبارت CHECK تعریف می‌شود.

مثال:

CREATE TABLE T3(ID NUMBER, NAME VARCHAR2(20), PHONE VARCHAR2(20), CONSTRAINT HOOHOO CHECK(PHONE LIKE '0__________'));

در این جدول دیگر نمی‌توان در فیلد PHONE هر داده‌ای را وارد کرد و حتماً باید با فرمت صحیح داده را وارد کرد تا درج اطلاعات انجام بشه:

INSERT INTO T3 VALUES(1, 'MAHDI', '091212312');
*
ERROR at line 1:
ORA-02290: CHECK CONSTRAINT (MGHAFFARI.HOOHOO) violated'
INSERT INTO T3 VALUES(1, 'MAHDI', '09121231234');

نکته: قاعده CHECK بار پردازشی بسیار زیادی بر روی دیتابیس اعمال می‌کند.

ادامه مطلب...
۲۹ فروردين ۹۴ ، ۰۱:۱۵ ۰ نظر
مهدی غفاری

قواعد جامعیتی

شما می‌توانید بر روی یک جدول، قواعد جامعیتی(محدودیت) ایجاد نمایید، این قواعد مقابل نام فیلد تعریف می‌شوند. بدون استفاده از محدودیت‌ها مدیریت داده‌ها مشکل و گاهی اوقات غیر ممکن خواهد‌شد.
قواعد جامعیتی پنج نوع می‌باشند که عبارتند از:

  • عدم هیچ مقدار
  • کلید یکتا
  • کلید اصلی (کلید داخلی)
  • ارجاعی (کلید خارجی)
  • ارزیابی

قاعده عدم هیچ مقدار (NOT NULL)

در برخی از مواقع، فیلد یا فیلد‌هایی که تعریف می‌کنید نباید مقدار هیچ را بپذیرند. برای محدود کردن این قبیل فیلد‌ها، از گزینه‌ای به نام NOT NULL استفاده می‌نماییم. اگر در ساخت فیلدها، از قاعده‌ی NOT NULL استفاده نکنید، پایگاه داده‌ها به طور پیش فرض مقدار NULL را برای آن فیلد، در نظر می‌گیرد. NULL به معنای آن است که، فیلد می‌تواند مقداری را در بر نگیرد. NOT NULL عکس NULL عمل می‌کند و بدان معنی است که هیچ‌گاه نمی‌توان آن فیلد را خالی رد کرد، دستور زیر را مشاهده نمایید:

CREATE TABLE TEST(ID NUMBER NOT NULL, TELL NUMBER DEFAULT 22222, ADDRESS VARCHAR2(10));

قاعده کلید یکتا (UNIQUE)

به هر فیلدی که مقدار تکراری را قبول نکند، کلید یکتا گفته می‌شود. این کلید در مواردی مثل شماره شناسنامه یا کد ملی که هر فردی شماره‌ای مخصوص به خود دارد، کاربرد فراوان دارد. در یک جدول می‌توان بیش از یک فیلد را، به عنوان کلید یکتا برگزید. این قاعده را با عبارت UNIQUE تعریف می‌کنند. در دستور زیر نحوه‌ی استفاده از دستور UNIQUE را مشاهده می‌کنید.

CREATE TABLE TEST(ID NUMBER UNIQUE, TELL NUMBER DEFAULT 22222, ADDRESS VARCHAR2(10));

برای نمایش یک پبغام در هنگام وقوع خطا در هر یک از قواعد جامعیتی از دستور CONSTRAINT استفاده می‌شود. به این صورت که کلمه نوشته‌شده بعد از آن، همان پیغامی است که می‌خواهیم چاپ شود و کلمه بعدی مشخص‌کننده خطایی است که باید چک‌شود.

CRAETE TABLE TEST(ID NUMBER CONSTRAINT UQ_TEST_ID UNIQUE, TELL NUMBER DEFAULT 22222, ADDRESS VARCHAR2(10));

ادامه مطلب...
۲۲ فروردين ۹۴ ، ۱۴:۱۶ ۰ نظر
مهدی غفاری