Ograničenja u SQL-u znače da primjenjujemo određene uvjete ili ograničenja na bazu podataka. To dalje znači da prije unosa podataka u bazu podataka provjeravamo neke uvjete. Ako uvjet koji smo primijenili na bazu podataka vrijedi za podatke koje treba umetnuti, tada će samo podaci biti umetnuti u tablice baze podataka.
Ograničenja u SQL-u mogu se kategorizirati u dvije vrste:
Ograničenje razine stupca koristi se za primjenu ograničenja na jedan stupac.
Ograničenje razine tablice koristi se za primjenu ograničenja na više stupaca.
Neki od stvarnih primjera ograničenja su sljedeći:
- Svaka osoba ima jedinstveni ID e-pošte. To je zato što prilikom izrade računa e-pošte za bilo kojeg korisnika, servisi za pružanje e-pošte kao što su Gmail, Yahoo ili bilo koji drugi servis za pružanje e-pošte uvijek će provjeravati dostupnost ID-a e-pošte koji korisnik želi za sebe. Ako neki drugi korisnik već ima ID e-pošte koji korisnik želi, tada se taj ID ne može dodijeliti drugom korisniku. To jednostavno znači da dva korisnika ne mogu imati iste ID-ove e-pošte na istoj usluzi pružanja e-pošte. Dakle, ovdje je ID e-pošte ograničenje baze podataka usluga pružanja e-pošte.
- Kad god postavimo lozinku za bilo koji sustav, postoje određena ograničenja kojih se treba pridržavati. Ova ograničenja mogu uključivati sljedeće:
- Lozinka mora sadržavati jedno veliko slovo.
- Lozinka mora imati najmanje osam znakova.
- Lozinka mora sadržavati barem jedan poseban simbol.
Ograničenja dostupna u SQL-u su:
- NIJE NULL
- JEDINSTVENO
- GLAVNI KLJUČ
- STRANI KLJUC
- ČEK
- ZADANO
- KREIRAJ INDEKS
Pokušajmo sada uz pomoć primjera detaljnije razumjeti različita ograničenja dostupna u SQL-u. Za pisanje svih upita koristit ćemo MySQL bazu podataka.
1. NIJE NULL
- NULL znači prazno, tj. vrijednost nije dostupna.
- Kad god je stupac tablice deklariran kao NIJE NULL, tada vrijednost tog stupca ne može biti prazna ni za jedan zapis tablice.
- Mora postojati vrijednost u stupcu na koji se primjenjuje ograničenje NOT NULL.
NAPOMENA: NULL ne znači nula. NULL znači prazan stupac, čak ni nula.
Sintaksa za primjenu ograničenja NOT NULL tijekom izrade tablice:
CREATE TABLE TableName (ColumnName1 datatype NOT NULL, ColumnName2 datatype,…., ColumnNameN datatype);
Primjer:
Stvorite tablicu učenika i primijenite ograničenje NOT NULL na jedan od stupaca tablice tijekom izrade tablice.
CREATE TABLE student(StudentID INT NOT NULL, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40));
Kako bismo potvrdili da je ograničenje not null primijenjeno na stupac tablice i da je tablica učenika uspješno kreirana, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za primjenu ograničenja NOT NULL na postojeći stupac tablice:
ALTER TABLE TableName CHANGE Old_ColumnName New_ColumnName Datatype NOT NULL;
Primjer:
Uzmite u obzir da imamo postojeću tablicu učenika, bez ikakvih ograničenja primijenjenih na nju. Kasnije smo odlučili primijeniti NOT NULL ograničenje na jedan od stupaca tablice. Zatim ćemo izvršiti sljedeći upit:
mysql> ALTER TABLE student CHANGE StudentID StudentID INT NOT NULL;
Kako bismo potvrdili da je ograničenje not null primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
2. JEDINSTVENO
- Dvostruke vrijednosti nisu dopuštene u stupcima na koje se primjenjuje UNIQUE ograničenje.
- Stupac s jedinstvenim ograničenjem uvijek će sadržavati jedinstvenu vrijednost.
- Ovo ograničenje može se primijeniti na jedan ili više od jednog stupca tablice, što znači da više od jednog jedinstvenog ograničenja može postojati na jednoj tablici.
- Koristeći UNIQUE ograničenje, također možete modificirati već izrađene tablice.
Sintaksa za primjenu UNIQUE ograničenja na jedan stupac:
CREATE TABLE TableName (ColumnName1 datatype UNIQUE, ColumnName2 datatype,…., ColumnNameN datatype);
Primjer:
Stvorite tablicu učenika i primijenite JEDINSTVENO ograničenje na jedan od stupaca tablice tijekom izrade tablice.
mysql> CREATE TABLE student(StudentID INT UNIQUE, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40));
Kako bismo potvrdili da je jedinstveno ograničenje primijenjeno na stupac tablice i da je tablica učenika uspješno kreirana, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za primjenu UNIQUE ograničenja na više od jednog stupca:
cijeli broj udvostručiti java
CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype,…., ColumnNameN datatype, UNIQUE (ColumnName1, ColumnName 2));
Primjer:
Stvorite tablicu učenika i primijenite JEDINSTVENO ograničenje na više od jednog stupca tablice tijekom izrade tablice.
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));
Kako bismo potvrdili da je jedinstveno ograničenje primijenjeno na više od jednog stupca tablice i da je tablica učenika uspješno kreirana, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za primjenu UNIQUE ograničenja na postojeći stupac tablice:
ALTER TABLE TableName ADD UNIQUE (ColumnName);
Primjer:
Uzmite u obzir da imamo postojeću tablicu učenika, bez ikakvih ograničenja primijenjenih na nju. Kasnije smo odlučili primijeniti UNIQUE ograničenje na jedan od stupaca tablice. Zatim ćemo izvršiti sljedeći upit:
mysql> ALTER TABLE student ADD UNIQUE (StudentID);
Kako bismo potvrdili da je jedinstveno ograničenje primijenjeno na stupac tablice i da je tablica učenika uspješno kreirana, izvršit ćemo sljedeći upit:
mysql> DESC student;
3. PRIMARNI KLJUČ
- Ograničenje PRIMARY KEY je kombinacija NOT NULL i Unique ograničenja.
- NOT NULL ograničenje i UNIQUE ograničenje zajedno čine PRIMARNOG ograničenja.
- Stupac na koji smo primijenili primarno ograničenje uvijek će sadržavati jedinstvenu vrijednost i neće dopustiti nulte vrijednosti.
Sintaksa ograničenja primarnog ključa tijekom izrade tablice:
CREATE TABLE TableName (ColumnName1 datatype PRIMARY KEY, ColumnName2 datatype,…., ColumnNameN datatype);
Primjer:
Stvorite tablicu učenika i primijenite ograničenje PRIMARY KEY tijekom izrade tablice.
mojlivecriklet
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));
Kako bismo potvrdili da je ograničenje primarnog ključa primijenjeno na stupac tablice i da je tablica učenika uspješno kreirana, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za primjenu ograničenja primarnog ključa na postojeći stupac tablice:
ALTER TABLE TableName ADD PRIMARY KEY (ColumnName);
Primjer:
Uzmite u obzir da imamo postojeću tablicu učenika, bez ikakvih ograničenja primijenjenih na nju. Kasnije smo odlučili primijeniti ograničenje PRIMARY KEY na stupac tablice. Zatim ćemo izvršiti sljedeći upit:
mysql> ALTER TABLE student ADD PRIMARY KEY (StudentID);
Kako bismo provjerili je li ograničenje primarnog ključa primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
4. STRANI KLJUČ
- Strani ključ se koristi za referentni integritet.
- Kada imamo dvije tablice, a jedna tablica uzima referencu iz druge tablice, tj. isti stupac je prisutan u objema tablicama i taj stupac djeluje kao primarni ključ u jednoj tablici. Taj određeni stupac djelovat će kao strani ključ u drugoj tablici.
Sintaksa za primjenu ograničenja stranog ključa tijekom izrade tablice:
CREATE TABLE tablename(ColumnName1 Datatype(SIZE) PRIMARY KEY, ColumnNameN Datatype(SIZE), FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName));
Primjer:
Napravite tablicu zaposlenika i primijenite ograničenje FOREIGN KEY tijekom izrade tablice.
Da bismo stvorili strani ključ na bilo kojoj tablici, prvo moramo stvoriti primarni ključ na tablici.
mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40));
Kako bismo provjerili je li ograničenje primarnog ključa primijenjeno na stupac tablice zaposlenika, izvršit ćemo sljedeći upit:
mysql> DESC employee;
Sada ćemo napisati upit za primjenu stranog ključa na tablicu odjela koji se odnosi na primarni ključ tablice zaposlenika, tj. 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));
Kako bismo provjerili je li ograničenje stranog ključa primijenjeno na stupac tablice odjela, izvršit ćemo sljedeći upit:
mysql> DESC department;
Sintaksa za primjenu ograničenja stranog ključa s nazivom ograničenja:
CREATE TABLE tablename(ColumnName1 Datatype PRIMARY KEY, ColumnNameN Datatype(SIZE), CONSTRAINT ConstraintName FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName));
Primjer:
Stvorite tablicu zaposlenika i primijenite ograničenje FOREIGN KEY s nazivom ograničenja dok stvarate tablicu.
Da bismo stvorili strani ključ na bilo kojoj tablici, prvo moramo stvoriti primarni ključ na tablici.
mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40));
Kako bismo provjerili je li ograničenje primarnog ključa primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC employee;
Sada ćemo napisati upit za primjenu stranog ključa s nazivom ograničenja na tablicu odjela koji se odnosi na primarni ključ tablice zaposlenika, tj. 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));
Kako bismo provjerili je li ograničenje stranog ključa primijenjeno na stupac tablice odjela, izvršit ćemo sljedeći upit:
niz c string
mysql> DESC department;
Sintaksa za primjenu ograničenja stranog ključa na postojeći stupac tablice:
ALTER TABLE Parent_TableName ADD FOREIGN KEY (ColumnName) REFERENCES Child_TableName (ColumnName);
Primjer:
Uzmite u obzir da imamo postojećeg stolnog zaposlenika i odjel. Kasnije smo odlučili primijeniti ograničenje FOREIGN KEY na stupac tablice odjela. Zatim ćemo izvršiti sljedeći upit:
mysql> DESC employee;
mysql> ALTER TABLE department ADD FOREIGN KEY (Emp_ID) REFERENCES employee (Emp_ID);
Kako bismo provjerili je li ograničenje stranog ključa primijenjeno na stupac tablice odjela, izvršit ćemo sljedeći upit:
mysql> DESC department;
5. PROVJERITE
- Kad god se ograničenje provjere primijeni na stupac tablice, a korisnik želi umetnuti vrijednost u njega, tada će vrijednost prvo biti provjerena za određene uvjete prije umetanja vrijednosti u taj stupac.
Sintaksa za primjenu ograničenja provjere na jedan stupac:
CREATE TABLE TableName (ColumnName1 datatype CHECK (ColumnName1 Condition), ColumnName2 datatype,…., ColumnNameN datatype);
Primjer:
Stvorite tablicu učenika i primijenite ograničenje CHECK za provjeru dobi ispod ili jednake 15 tijekom izrade tablice.
mysql> 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's column, we will execute the following query:</p> <pre> mysql> 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),…., 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> 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> 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'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's column. Then we will execute the following query:</p> <pre> mysql> 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's column, we will execute the following query:</p> <pre> mysql> 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'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,…., 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> CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40) DEFAULT '[email protected]'); </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's column, we will execute the following query:</p> <pre> mysql> 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'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's column. Then we will execute the following query:</p> <pre> mysql> ALTER TABLE student ALTER Student_Email_ID SET DEFAULT '[email protected]'; </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's column, we will execute the following query:</p> <pre> mysql> 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> 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's column, we will execute the following query:</p> <pre> mysql> 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> 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's column, we will execute the following query:</p> <pre> mysql> 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's column. Then we will execute the following query:</p> <pre> mysql> 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's column, we will execute the following query:</p> <pre> mysql> DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-41.webp" alt="Constraints in SQL"> <hr></=15></pre></=>
Sintaksa za primjenu ograničenja provjere na više stupaca:
CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype CHECK (ColumnName1 Condition AND ColumnName2 Condition),…., ColumnNameN datatype);
Primjer:
ispitivanje i vrste ispitivanja
Stvorite tablicu učenika i primijenite ograničenje PROVJERA da biste provjerili dob manju ili jednaku 15 i postotak veći od 85 tijekom izrade tablice.
mysql> 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));
Kako bismo potvrdili da je ograničenje provjere primijenjeno na stupac dobi i postotka, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za primjenu ograničenja provjere na postojeći stupac tablice:
ALTER TABLE TableName ADD CHECK (ColumnName Condition);
Primjer:
Uzmimo u obzir da imamo postojećeg studentskog stola. Kasnije smo odlučili primijeniti ograničenje CHECK na stupac tablice učenika. Zatim ćemo izvršiti sljedeći upit:
mysql> 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's column, we will execute the following query:</p> <pre> mysql> 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'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,…., 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> CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40) DEFAULT '[email protected]'); </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's column, we will execute the following query:</p> <pre> mysql> 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'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's column. Then we will execute the following query:</p> <pre> mysql> ALTER TABLE student ALTER Student_Email_ID SET DEFAULT '[email protected]'; </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's column, we will execute the following query:</p> <pre> mysql> 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> 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's column, we will execute the following query:</p> <pre> mysql> 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> 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's column, we will execute the following query:</p> <pre> mysql> 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's column. Then we will execute the following query:</p> <pre> mysql> 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's column, we will execute the following query:</p> <pre> mysql> DESC student; </pre> <br> <img src="//techcodeview.com/img/sql-tutorial/65/constraints-sql-41.webp" alt="Constraints in SQL"> <hr></=15>
6. ZADANO
Kad god se zadano ograničenje primijeni na stupac tablice, a korisnik nije odredio vrijednost koja će se u njega umetnuti, zadana vrijednost koja je navedena tijekom primjene zadanog ograničenja bit će umetnuta u taj određeni stupac.
Sintaksa za primjenu zadanog ograničenja tijekom izrade tablice:
CREATE TABLE TableName (ColumnName1 datatype DEFAULT Value, ColumnName2 datatype,…., ColumnNameN datatype);
Primjer:
Stvorite tablicu učenika i primijenite zadano ograničenje tijekom izrade tablice.
mysql> CREATE TABLE student(StudentID INT, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40) DEFAULT '[email protected]');
Kako bismo provjerili je li zadano ograničenje primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za primjenu zadanog ograničenja na postojeći stupac tablice:
ALTER TABLE TableName ALTER ColumnName SET DEFAULT Value;
Primjer:
Uzmimo u obzir da imamo postojećeg studentskog stola. Kasnije smo odlučili primijeniti DEFAULT ograničenje na stupac tablice učenika. Zatim ćemo izvršiti sljedeći upit:
mysql> ALTER TABLE student ALTER Student_Email_ID SET DEFAULT '[email protected]';
Kako bismo provjerili je li zadano ograničenje primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
7. IZRADI INDEKS
Ograničenje CREATE INDEX koristi se za stvaranje indeksa na tablici. Indeksi nisu vidljivi korisniku, ali pomažu korisniku da ubrza brzinu pretraživanja ili dohvaćanja podataka iz baze podataka.
Sintaksa za stvaranje indeksa na jednom stupcu:
CREATE INDEX IndexName ON TableName (ColumnName 1);
Primjer:
Stvorite indeks na tablici učenika i primijenite zadano ograničenje tijekom izrade tablice.
mysql> CREATE INDEX idx_StudentID ON student (StudentID);
Kako bismo potvrdili da je ograničenje kreiranja indeksa primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za stvaranje indeksa na više stupaca:
CREATE INDEX IndexName ON TableName (ColumnName 1, ColumnName 2, ColumnName N);
Primjer:
kako generirati slučajni broj u Javi
mysql> CREATE INDEX idx_Student ON student (StudentID, Student_PhoneNumber);
Kako bismo potvrdili da je ograničenje kreiranja indeksa primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
Sintaksa za stvaranje indeksa na postojećoj tablici:
ALTER TABLE TableName ADD INDEX (ColumnName);
Uzmimo u obzir da imamo postojećeg studentskog stola. Kasnije smo odlučili primijeniti DEFAULT ograničenje na stupac tablice učenika. Zatim ćemo izvršiti sljedeći upit:
mysql> ALTER TABLE student ADD INDEX (StudentID);
Kako bismo potvrdili da je ograničenje kreiranja indeksa primijenjeno na stupac tablice učenika, izvršit ćemo sljedeći upit:
mysql> DESC student;
=15>=>