logo

Обмеження в SQL

Обмеження в SQL означають, що ми застосовуємо певні умови або обмеження до бази даних. Крім того, це означає, що перед вставленням даних у базу даних ми перевіряємо певні умови. Якщо умова, яку ми застосували до бази даних, виконується для даних, які потрібно вставити, тоді в таблиці бази даних буде вставлено лише дані.

Обмеження в SQL можна розділити на два типи:

    Обмеження рівня стовпця:
    Обмеження рівня стовпця використовується для застосування обмеження до одного стовпця.Обмеження рівня таблиці:
    Обмеження рівня таблиці використовується для застосування обмеження до кількох стовпців.

Нижче наведено деякі реальні приклади обмежень:

  1. Кожна особа має унікальний ідентифікатор електронної пошти. Це пояснюється тим, що під час створення облікового запису електронної пошти для будь-якого користувача служби електронної пошти, такі як Gmail, Yahoo або будь-які інші служби електронної пошти, завжди перевірятимуть доступність ідентифікатора електронної пошти, який користувач бажає собі. Якщо інший користувач уже бере потрібний ідентифікатор електронної пошти, цей ідентифікатор не можна призначити іншому користувачеві. Це просто означає, що жодні користувачі не можуть мати однакові ідентифікатори електронної пошти в одній службі надання електронної пошти. Отже, тут ідентифікатор електронної пошти є обмеженням на базу даних послуг, що надають електронну пошту.
  2. Щоразу, коли ми встановлюємо пароль для будь-якої системи, є певні обмеження, яких слід дотримуватися. Ці обмеження можуть включати наступне:
    • У паролі має бути один символ у верхньому регістрі.
    • Довжина пароля має бути не менше восьми символів.
    • Пароль повинен містити хоча б один спеціальний символ.

У SQL доступні такі обмеження:

  1. НЕ NULL
  2. УНІКАЛЬНИЙ
  3. ПЕРВИННИЙ КЛЮЧ
  4. ЗОВНІШНІЙ КЛЮЧ
  5. ПЕРЕВІРИТИ
  6. ЗА ПРОМОВЧАННЯМ
  7. СТВОРИТИ ІНДЕКС

Тепер давайте спробуємо більш детально зрозуміти різні обмеження, доступні в SQL, за допомогою прикладів. Ми будемо використовувати базу даних MySQL для написання всіх запитів.

1. НЕ НУЛЬ

  • NULL означає порожній, тобто значення недоступне.
  • Щоразу, коли стовпець таблиці оголошено як NOT NULL, значення цього стовпця не може бути порожнім для жодного із записів таблиці.
  • У стовпці має існувати значення, до якого застосовано обмеження NOT NULL.

ПРИМІТКА: NULL не означає нуль. NULL означає порожній стовпець, навіть не нуль.

Синтаксис застосування обмеження NOT NULL під час створення таблиці:

 CREATE TABLE TableName (ColumnName1 datatype NOT NULL, ColumnName2 datatype,…., ColumnNameN datatype); 

приклад:

Створіть таблицю учнів і застосуйте обмеження NOT NULL до одного зі стовпців таблиці під час створення таблиці.

 CREATE TABLE student(StudentID INT NOT NULL, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40)); 

Обмеження в SQL

Щоб переконатися, що обмеження not null застосовано до стовпця таблиці та успішно створено таблицю студента, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

Синтаксис застосування обмеження NOT NULL до наявного стовпця таблиці:

 ALTER TABLE TableName CHANGE Old_ColumnName New_ColumnName Datatype NOT NULL; 

приклад:

Припустімо, що ми маємо наявну таблицю student без будь-яких обмежень, застосованих до неї. Пізніше ми вирішили застосувати обмеження NOT NULL до одного зі стовпців таблиці. Потім ми виконаємо наступний запит:

 mysql> ALTER TABLE student CHANGE StudentID StudentID INT NOT NULL; 

Обмеження в SQL

Щоб переконатися, що обмеження not null застосовано до стовпця таблиці студентів, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

2. УНІКАЛЬНІ

  • Повторювані значення не допускаються в стовпцях, до яких застосовано обмеження UNIQUE.
  • Стовпець із унікальним обмеженням завжди міститиме унікальне значення.
  • Це обмеження можна застосувати до одного або кількох стовпців таблиці, що означає, що в одній таблиці може існувати більше ніж одне унікальне обмеження.
  • Використовуючи обмеження UNIQUE, ви також можете змінювати вже створені таблиці.

Синтаксис застосування обмеження UNIQUE до одного стовпця:

 CREATE TABLE TableName (ColumnName1 datatype UNIQUE, ColumnName2 datatype,…., ColumnNameN datatype); 

приклад:

Створіть таблицю учнів і застосуйте обмеження UNIQUE до одного зі стовпців таблиці під час створення таблиці.

 mysql> CREATE TABLE student(StudentID INT UNIQUE, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40)); 

Обмеження в SQL

Щоб переконатися, що унікальне обмеження застосовано до стовпця таблиці та успішно створено таблицю студента, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

Синтаксис застосування обмеження UNIQUE до кількох стовпців:

використання операційної системи
 CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype,…., ColumnNameN datatype, UNIQUE (ColumnName1, ColumnName 2)); 

приклад:

Створіть таблицю учнів і застосуйте обмеження UNIQUE до кількох стовпців таблиці під час створення таблиці.

 mysql> CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40), UNIQUE(StudentID, Student_PhoneNumber)); 

Обмеження в SQL

Щоб переконатися, що унікальне обмеження застосовано до кількох стовпців таблиці та успішно створено таблицю студента, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

Синтаксис застосування обмеження UNIQUE до наявного стовпця таблиці:

 ALTER TABLE TableName ADD UNIQUE (ColumnName); 

приклад:

Припустімо, що ми маємо існуючу таблицю student без будь-яких обмежень, застосованих до неї. Пізніше ми вирішили застосувати обмеження UNIQUE до одного зі стовпців таблиці. Потім ми виконаємо наступний запит:

 mysql> ALTER TABLE student ADD UNIQUE (StudentID); 

Обмеження в SQL

Щоб переконатися, що унікальне обмеження застосовано до стовпця таблиці та успішно створено таблицю студента, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

3. ПЕРВИННИЙ КЛЮЧ

  • Обмеження PRIMARY KEY — це комбінація обмежень NOT NULL і Unique.
  • Обмеження NOT NULL і обмеження UNIQUE разом утворюють ОСНОВНЕ обмеження.
  • Стовпець, до якого ми застосували основне обмеження, завжди міститиме унікальне значення та не допускатиме нульових значень.

Синтаксис обмеження первинного ключа під час створення таблиці:

 CREATE TABLE TableName (ColumnName1 datatype PRIMARY KEY, ColumnName2 datatype,…., ColumnNameN datatype); 

приклад:

що таке інтерфейс

Створіть таблицю учнів і застосуйте обмеження PRIMARY KEY під час створення таблиці.

 mysql> CREATE TABLE student(StudentID INT PRIMARY KEY, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40)); 

Обмеження в SQL

Щоб переконатися, що обмеження первинного ключа застосовано до стовпця таблиці та успішно створено таблицю студента, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

Синтаксис застосування обмеження первинного ключа до наявного стовпця таблиці:

 ALTER TABLE TableName ADD PRIMARY KEY (ColumnName); 

приклад:

Припустімо, що ми маємо існуючу таблицю student без будь-яких обмежень, застосованих до неї. Пізніше ми вирішили застосувати обмеження PRIMARY KEY до стовпця таблиці. Потім ми виконаємо наступний запит:

 mysql> ALTER TABLE student ADD PRIMARY KEY (StudentID); 

Обмеження в SQL

Щоб переконатися, що обмеження первинного ключа застосовано до стовпця таблиці студентів, ми виконаємо такий запит:

 mysql> DESC student; 

Обмеження в SQL

4. ЗОВНІШНІЙ КЛЮЧ

  • Зовнішній ключ використовується для посилальної цілісності.
  • Коли у нас є дві таблиці, і одна таблиця бере посилання на іншу таблицю, тобто той самий стовпець присутній в обох таблицях, і цей стовпець діє як первинний ключ в одній таблиці. Цей конкретний стовпець діятиме як зовнішній ключ в іншій таблиці.

Синтаксис застосування обмеження зовнішнього ключа під час створення таблиці:

 CREATE TABLE tablename(ColumnName1 Datatype(SIZE) PRIMARY KEY, ColumnNameN Datatype(SIZE), FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName)); 

приклад:

Створіть таблицю співробітників і застосуйте обмеження FOREIGN KEY під час створення таблиці.

Щоб створити зовнішній ключ для будь-якої таблиці, спочатку нам потрібно створити первинний ключ для таблиці.

 mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40)); 

Обмеження в SQL

Щоб переконатися, що обмеження первинного ключа застосовано до стовпця таблиці співробітників, ми виконаємо такий запит:

каталог у командах Linux
 mysql> DESC employee; 

Обмеження в SQL

Тепер ми напишемо запит для застосування зовнішнього ключа до таблиці відділу, посилаючись на первинний ключ таблиці співробітників, тобто Emp_ID.

 mysql> CREATE TABLE department(Dept_ID INT NOT NULL PRIMARY KEY, Dept_Name VARCHAR(40), Emp_ID INT NOT NULL, FOREIGN KEY(Emp_ID) REFERENCES employee(Emp_ID)); 

Обмеження в SQL

Щоб переконатися, що обмеження зовнішнього ключа застосовано до стовпця таблиці відділу, ми виконаємо такий запит:

 mysql> DESC department; 

Обмеження в SQL

Синтаксис застосування обмеження зовнішнього ключа з назвою обмеження:

 CREATE TABLE tablename(ColumnName1 Datatype PRIMARY KEY, ColumnNameN Datatype(SIZE), CONSTRAINT ConstraintName FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName)); 

приклад:

Створіть таблицю співробітників і застосуйте обмеження FOREIGN KEY із назвою обмеження під час створення таблиці.

Щоб створити зовнішній ключ для будь-якої таблиці, спочатку нам потрібно створити первинний ключ для таблиці.

 mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40)); 

Обмеження в SQL

Щоб переконатися, що обмеження первинного ключа застосовано до стовпця таблиці студентів, ми виконаємо такий запит:

 mysql> DESC employee; 

Обмеження в SQL

Тепер ми напишемо запит для застосування зовнішнього ключа з назвою обмеження до таблиці відділу, посилаючись на первинний ключ таблиці співробітників, тобто Emp_ID.

 mysql> CREATE TABLE department(Dept_ID INT NOT NULL PRIMARY KEY, Dept_Name VARCHAR(40), Emp_ID INT NOT NULL, CONSTRAINT emp_id_fk FOREIGN KEY(Emp_ID) REFERENCES employee(Emp_ID)); 

Обмеження в SQL

Щоб переконатися, що обмеження зовнішнього ключа застосовано до стовпця таблиці відділу, ми виконаємо такий запит:

 mysql> DESC department; 

Обмеження в SQL

Синтаксис застосування обмеження зовнішнього ключа до наявного стовпця таблиці:

 ALTER TABLE Parent_TableName ADD FOREIGN KEY (ColumnName) REFERENCES Child_TableName (ColumnName); 

приклад:

Вважайте, що у нас є штатний співробітник і відділ. Пізніше ми вирішили застосувати обмеження FOREIGN KEY до стовпця таблиці відділу. Потім ми виконаємо наступний запит:

 mysql> DESC employee; 

Обмеження в SQL
 mysql> ALTER TABLE department ADD FOREIGN KEY (Emp_ID) REFERENCES employee (Emp_ID); 

Обмеження в SQL

Щоб переконатися, що обмеження зовнішнього ключа застосовано до стовпця таблиці відділу, ми виконаємо такий запит:

 mysql> DESC department; 

Обмеження в SQL

5. ПЕРЕВІРКА

  • Кожного разу, коли до стовпця таблиці застосовується обмеження перевірки, і користувач хоче вставити в нього значення, значення спочатку перевірятиметься на відповідність певним умовам, перш ніж вставляти значення в цей стовпець.
  • Наприклад:якщо в таблиці є стовпець віку, то користувач вставлятиме будь-яке значення на свій вибір. Користувач також введе навіть від'ємне значення або будь-яке інше недійсне значення. Але якщо користувач застосував обмеження перевірки до стовпця віку з умовою вік більше 18. Тоді в таких випадках, навіть якщо користувач намагається вставити недійсне значення, наприклад нуль або будь-яке інше значення менше 18, тоді вік стовпець не прийме це значення та не дозволить користувачеві вставити його через застосування обмеження перевірки на віковий стовпець.

Синтаксис застосування перевірочного обмеження до одного стовпця:

 CREATE TABLE TableName (ColumnName1 datatype CHECK (ColumnName1 Condition), ColumnName2 datatype,…., ColumnNameN datatype); 

приклад:

Створіть таблицю студентів і застосуйте обмеження CHECK, щоб перевірити вік менше або дорівнює 15 під час створення таблиці.

 mysql&gt; CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40), Age INT CHECK( Age <= 15)); < pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-26.webp" alt="Constraints in SQL"> <p>To verify that the check constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-27.webp" alt="Constraints in SQL"> <p> <strong>Syntax to apply check constraint on multiple columns:</strong> </p> <pre> CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype CHECK (ColumnName1 Condition AND ColumnName2 Condition),&#x2026;., ColumnNameN datatype); </pre> <p> <strong>Example:</strong> </p> <p>Create a student table and apply CHECK constraint to check for the age less than or equal to 15 and a percentage greater than 85 while creating a table.</p> <pre> mysql&gt; CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40), Age INT, Percentage INT, CHECK( Age 85)); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-28.webp" alt="Constraints in SQL"> <p>To verify that the check constraint is applied to the age and percentage column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-29.webp" alt="Constraints in SQL"> <p> <strong>Syntax to apply check constraint on an existing table&apos;s column:</strong> </p> <pre> ALTER TABLE TableName ADD CHECK (ColumnName Condition); </pre> <p> <strong>Example:</strong> </p> <p>Consider we have an existing table student. Later, we decided to apply the CHECK constraint on the student table&apos;s column. Then we will execute the following query:</p> <pre> mysql&gt; ALTER TABLE student ADD CHECK ( Age <=15 ); < pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-30.webp" alt="Constraints in SQL"> <p>To verify that the check constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-31.webp" alt="Constraints in SQL"> <h3>6. DEFAULT</h3> <p>Whenever a default constraint is applied to the table&apos;s column, and the user has not specified the value to be inserted in it, then the default value which was specified while applying the default constraint will be inserted into that particular column.</p> <p> <strong>Syntax to apply default constraint during table creation:</strong> </p> <pre> CREATE TABLE TableName (ColumnName1 datatype DEFAULT Value, ColumnName2 datatype,&#x2026;., ColumnNameN datatype); </pre> <p> <strong>Example:</strong> </p> <p>Create a student table and apply the default constraint while creating a table.</p> <pre> mysql&gt; CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40) DEFAULT &apos;[email protected]&apos;); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-32.webp" alt="Constraints in SQL"> <p>To verify that the default constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-33.webp" alt="Constraints in SQL"> <p> <strong>Syntax to apply default constraint on an existing table&apos;s column:</strong> </p> <pre> ALTER TABLE TableName ALTER ColumnName SET DEFAULT Value; </pre> <p> <strong>Example:</strong> </p> <p>Consider we have an existing table student. Later, we decided to apply the DEFAULT constraint on the student table&apos;s column. Then we will execute the following query:</p> <pre> mysql&gt; ALTER TABLE student ALTER Student_Email_ID SET DEFAULT &apos;[email protected]&apos;; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-34.webp" alt="Constraints in SQL"> <p>To verify that the default constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-35.webp" alt="Constraints in SQL"> <h3>7. CREATE INDEX</h3> <p>CREATE INDEX constraint is used to create an index on the table. Indexes are not visible to the user, but they help the user to speed up the searching speed or retrieval of data from the database.</p> <p> <strong>Syntax to create an index on single column:</strong> </p> <pre> CREATE INDEX IndexName ON TableName (ColumnName 1); </pre> <p> <strong>Example:</strong> </p> <p>Create an index on the student table and apply the default constraint while creating a table.</p> <pre> mysql&gt; CREATE INDEX idx_StudentID ON student (StudentID); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-36.webp" alt="Constraints in SQL"> <p>To verify that the create index constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-37.webp" alt="Constraints in SQL"> <p> <strong>Syntax to create an index on multiple columns:</strong> </p> <pre> CREATE INDEX IndexName ON TableName (ColumnName 1, ColumnName 2, ColumnName N); </pre> <p> <strong>Example:</strong> </p> <pre> mysql&gt; CREATE INDEX idx_Student ON student (StudentID, Student_PhoneNumber); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-38.webp" alt="Constraints in SQL"> <p>To verify that the create index constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-39.webp" alt="Constraints in SQL"> <p> <strong>Syntax to create an index on an existing table:</strong> </p> <pre> ALTER TABLE TableName ADD INDEX (ColumnName); </pre> <p>Consider we have an existing table student. Later, we decided to apply the DEFAULT constraint on the student table&apos;s column. Then we will execute the following query:</p> <pre> mysql&gt; ALTER TABLE student ADD INDEX (StudentID); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-40.webp" alt="Constraints in SQL"> <p>To verify that the create index constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-41.webp" alt="Constraints in SQL"> <hr></=15></pre></=>

Обмеження в SQL

Синтаксис застосування перевірочного обмеження до кількох стовпців:

 CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype CHECK (ColumnName1 Condition AND ColumnName2 Condition),&#x2026;., ColumnNameN datatype); 

приклад:

Створіть таблицю учнів і застосуйте обмеження CHECK, щоб під час створення таблиці перевірити вік менше або дорівнює 15 і відсоток більше 85.

 mysql&gt; CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40), Age INT, Percentage INT, CHECK( Age 85)); 

Обмеження в SQL

Щоб переконатися, що обмеження перевірки застосовано до стовпця вік і відсоток, ми виконаємо такий запит:

 mysql&gt; DESC student; 

Обмеження в SQL

Синтаксис застосування перевірочного обмеження до наявного стовпця таблиці:

 ALTER TABLE TableName ADD CHECK (ColumnName Condition); 

приклад:

Припустімо, що ми маємо наявну таблицю student. Пізніше ми вирішили застосувати обмеження CHECK до стовпця таблиці учнів. Потім ми виконаємо наступний запит:

 mysql&gt; ALTER TABLE student ADD CHECK ( Age <=15 ); < pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-30.webp" alt="Constraints in SQL"> <p>To verify that the check constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-31.webp" alt="Constraints in SQL"> <h3>6. DEFAULT</h3> <p>Whenever a default constraint is applied to the table&apos;s column, and the user has not specified the value to be inserted in it, then the default value which was specified while applying the default constraint will be inserted into that particular column.</p> <p> <strong>Syntax to apply default constraint during table creation:</strong> </p> <pre> CREATE TABLE TableName (ColumnName1 datatype DEFAULT Value, ColumnName2 datatype,&#x2026;., ColumnNameN datatype); </pre> <p> <strong>Example:</strong> </p> <p>Create a student table and apply the default constraint while creating a table.</p> <pre> mysql&gt; CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40) DEFAULT &apos;[email protected]&apos;); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-32.webp" alt="Constraints in SQL"> <p>To verify that the default constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-33.webp" alt="Constraints in SQL"> <p> <strong>Syntax to apply default constraint on an existing table&apos;s column:</strong> </p> <pre> ALTER TABLE TableName ALTER ColumnName SET DEFAULT Value; </pre> <p> <strong>Example:</strong> </p> <p>Consider we have an existing table student. Later, we decided to apply the DEFAULT constraint on the student table&apos;s column. Then we will execute the following query:</p> <pre> mysql&gt; ALTER TABLE student ALTER Student_Email_ID SET DEFAULT &apos;[email protected]&apos;; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-34.webp" alt="Constraints in SQL"> <p>To verify that the default constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-35.webp" alt="Constraints in SQL"> <h3>7. CREATE INDEX</h3> <p>CREATE INDEX constraint is used to create an index on the table. Indexes are not visible to the user, but they help the user to speed up the searching speed or retrieval of data from the database.</p> <p> <strong>Syntax to create an index on single column:</strong> </p> <pre> CREATE INDEX IndexName ON TableName (ColumnName 1); </pre> <p> <strong>Example:</strong> </p> <p>Create an index on the student table and apply the default constraint while creating a table.</p> <pre> mysql&gt; CREATE INDEX idx_StudentID ON student (StudentID); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-36.webp" alt="Constraints in SQL"> <p>To verify that the create index constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-37.webp" alt="Constraints in SQL"> <p> <strong>Syntax to create an index on multiple columns:</strong> </p> <pre> CREATE INDEX IndexName ON TableName (ColumnName 1, ColumnName 2, ColumnName N); </pre> <p> <strong>Example:</strong> </p> <pre> mysql&gt; CREATE INDEX idx_Student ON student (StudentID, Student_PhoneNumber); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-38.webp" alt="Constraints in SQL"> <p>To verify that the create index constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-39.webp" alt="Constraints in SQL"> <p> <strong>Syntax to create an index on an existing table:</strong> </p> <pre> ALTER TABLE TableName ADD INDEX (ColumnName); </pre> <p>Consider we have an existing table student. Later, we decided to apply the DEFAULT constraint on the student table&apos;s column. Then we will execute the following query:</p> <pre> mysql&gt; ALTER TABLE student ADD INDEX (StudentID); </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-40.webp" alt="Constraints in SQL"> <p>To verify that the create index constraint is applied to the student table&apos;s column, we will execute the following query:</p> <pre> mysql&gt; DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-41.webp" alt="Constraints in SQL"> <hr></=15>

Обмеження в SQL

6. ЗА УМОВЧУВАННЯМ

Щоразу, коли обмеження за замовчуванням застосовано до стовпця таблиці, і користувач не вказав значення, яке потрібно вставити в нього, тоді значення за замовчуванням, яке було вказано під час застосування обмеження за замовчуванням, буде вставлено в цей конкретний стовпець.

Синтаксис застосування обмеження за замовчуванням під час створення таблиці:

підрядок у bash
 CREATE TABLE TableName (ColumnName1 datatype DEFAULT Value, ColumnName2 datatype,&#x2026;., ColumnNameN datatype); 

приклад:

Створіть таблицю учнів і застосуйте обмеження за замовчуванням під час створення таблиці.

 mysql&gt; CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40) DEFAULT &apos;[email protected]&apos;); 

Обмеження в SQL

Щоб переконатися, що обмеження за замовчуванням застосовано до стовпця таблиці учнів, ми виконаємо такий запит:

 mysql&gt; DESC student; 

Обмеження в SQL

Синтаксис застосування обмежень за умовчанням до наявного стовпця таблиці:

 ALTER TABLE TableName ALTER ColumnName SET DEFAULT Value; 

приклад:

Припустімо, що ми маємо наявну таблицю student. Пізніше ми вирішили застосувати обмеження DEFAULT до стовпця таблиці учнів. Потім ми виконаємо наступний запит:

модель будівельника
 mysql&gt; ALTER TABLE student ALTER Student_Email_ID SET DEFAULT &apos;[email protected]&apos;; 

Обмеження в SQL

Щоб переконатися, що обмеження за замовчуванням застосовано до стовпця таблиці учнів, ми виконаємо такий запит:

 mysql&gt; DESC student; 

Обмеження в SQL

7. СТВОРИТИ ІНДЕКС

Обмеження CREATE INDEX використовується для створення індексу в таблиці. Індекси не видимі для користувача, але вони допомагають користувачеві прискорити швидкість пошуку або отримання даних із бази даних.

Синтаксис для створення індексу в одному стовпці:

 CREATE INDEX IndexName ON TableName (ColumnName 1); 

приклад:

Створіть індекс у таблиці студентів і застосуйте обмеження за замовчуванням під час створення таблиці.

 mysql&gt; CREATE INDEX idx_StudentID ON student (StudentID); 

Обмеження в SQL

Щоб переконатися, що обмеження створення індексу застосовано до стовпця таблиці студентів, ми виконаємо такий запит:

 mysql&gt; DESC student; 

Обмеження в SQL

Синтаксис для створення індексу на кількох стовпцях:

 CREATE INDEX IndexName ON TableName (ColumnName 1, ColumnName 2, ColumnName N); 

приклад:

 mysql&gt; CREATE INDEX idx_Student ON student (StudentID, Student_PhoneNumber); 

Обмеження в SQL

Щоб переконатися, що обмеження створення індексу застосовано до стовпця таблиці студентів, ми виконаємо такий запит:

 mysql&gt; DESC student; 

Обмеження в SQL

Синтаксис для створення індексу в існуючій таблиці:

 ALTER TABLE TableName ADD INDEX (ColumnName); 

Припустімо, що ми маємо наявну таблицю student. Пізніше ми вирішили застосувати обмеження DEFAULT до стовпця таблиці учнів. Потім ми виконаємо наступний запит:

 mysql&gt; ALTER TABLE student ADD INDEX (StudentID); 

Обмеження в SQL

Щоб переконатися, що обмеження створення індексу застосовано до стовпця таблиці студентів, ми виконаємо такий запит:

 mysql&gt; DESC student; 

Обмеження в SQL