Az SQL korlátozásai azt jelentik, hogy bizonyos feltételeket vagy korlátozásokat alkalmazunk az adatbázisra. Ez továbbá azt jelenti, hogy mielőtt adatokat beszúrnánk az adatbázisba, ellenőrizünk bizonyos feltételeket. Ha az adatbázisra alkalmazott feltétel igaz a beszúrandó adatokra, akkor csak az adatok kerülnek be az adatbázistáblákba.
Az SQL kényszerei két típusra oszthatók:
Az Oszlopszintű megszorítást egyetlen oszlopra vonatkozó kényszer alkalmazására használják.
A Táblázatszintű megszorítást több oszlopra vonatkozó kényszer alkalmazására használják.
Néhány valós példa a korlátozásokra a következő:
- Minden embernek egyedi e-mail azonosítója van. Ennek az az oka, hogy amikor bármely felhasználó számára e-mail fiókot hoz létre, az e-mail-szolgáltatók, mint például a Gmail, a Yahoo vagy bármely más e-mailt szolgáltató szolgáltatás, mindig ellenőrzik a felhasználó által kívánt e-mail azonosító elérhetőségét. Ha egy másik felhasználó már megkapta az általa kívánt e-mail azonosítót, akkor az azonosító nem rendelhető hozzá másik felhasználóhoz. Ez egyszerűen azt jelenti, hogy két felhasználónak nem lehet ugyanaz az e-mail azonosítója ugyanazon az e-mail szolgáltatáson. Tehát itt az e-mail azonosító az e-mail szolgáltatást nyújtó adatbázis korlátozása.
- Amikor bármilyen rendszerhez jelszót állítunk be, bizonyos megkötéseket be kell tartani. Ezek a korlátozások a következőket tartalmazhatják:
- A jelszóban egy nagybetűnek kell lennie.
- A jelszónak legalább nyolc karakter hosszúságúnak kell lennie.
- A jelszónak tartalmaznia kell legalább egy speciális szimbólumot.
Az SQL-ben elérhető megszorítások a következők:
- NEM NULLA
- EGYEDI
- ELSŐDLEGES KULCS
- IDEGEN KULCS
- JELÖLJE BE
- ALAPÉRTELMEZETT
- INDEX LÉTREHOZÁSA
Most próbáljuk meg részletesebben megérteni az SQL-ben elérhető különböző megszorításokat, példák segítségével. Az összes lekérdezés írásához MySQL adatbázist fogunk használni.
1. NEM NULL
- NULL azt jelenti, hogy üres, azaz az érték nem elérhető.
- Ha egy tábla oszlopa NEM NULL-ként van deklarálva, akkor az oszlop értéke nem lehet üres a tábla egyik rekordjában sem.
- Léteznie kell egy értéknek abban az oszlopban, amelyre a NOT NULL megszorítás vonatkozik.
MEGJEGYZÉS: A NULL nem jelent nullát. A NULL üres oszlopot jelent, még csak nem is nullát.
Szintaxis a NOT NULL kényszer alkalmazásához a táblázat létrehozása során:
CREATE TABLE TableName (ColumnName1 datatype NOT NULL, ColumnName2 datatype,…., ColumnNameN datatype);
Példa:
Hozzon létre egy tanulói táblát, és a táblázat létrehozásakor alkalmazzon egy NOT NULL megszorítást a táblázat egyik oszlopára.
CREATE TABLE student(StudentID INT NOT NULL, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40));
Annak ellenőrzésére, hogy a nem null kényszert alkalmazták-e a tábla oszlopára, és a tanulótábla sikeresen létrejött-e, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis a NOT NULL kényszer alkalmazásához egy meglévő táblázat oszlopában:
ALTER TABLE TableName CHANGE Old_ColumnName New_ColumnName Datatype NOT NULL;
Példa:
Tegyük fel, hogy van egy meglévő táblázatos tanulónk, anélkül, hogy bármilyen megkötést alkalmaznánk. Később úgy döntöttünk, hogy egy NOT NULL megszorítást alkalmazunk a táblázat egyik oszlopára. Ezután a következő lekérdezést hajtjuk végre:
mysql> ALTER TABLE student CHANGE StudentID StudentID INT NOT NULL;
Annak ellenőrzésére, hogy a nem null megszorítás érvényesül a tanulói tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
2. EGYEDI
- Azokban az oszlopokban, amelyekre az EGYEDI megszorítás vonatkozik, nem megengedettek az értékek ismétlődése.
- Az egyedi megszorítással rendelkező oszlop mindig egyedi értéket fog tartalmazni.
- Ez a megszorítás alkalmazható a tábla egy vagy több oszlopára, ami azt jelenti, hogy egyetlen táblán egynél több egyedi megszorítás is létezhet.
- Az EGYEDI kényszer segítségével a már létrehozott táblákat is módosíthatja.
Szintaxis az EGYEDI kényszer egyetlen oszlopra történő alkalmazásához:
CREATE TABLE TableName (ColumnName1 datatype UNIQUE, ColumnName2 datatype,…., ColumnNameN datatype);
Példa:
Hozzon létre egy tanulói táblát, és alkalmazzon EGYEDI kényszert a táblázat egyik oszlopára a táblázat létrehozásakor.
mysql> CREATE TABLE student(StudentID INT UNIQUE, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40));
Annak ellenőrzésére, hogy az egyedi megszorítás alkalmazva van-e a tábla oszlopára, és a tanulótábla sikeresen létrejött-e, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis az EGYEDI kényszer alkalmazásához egynél több oszlopra:
java karakterlánc a json-ba
CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype,…., ColumnNameN datatype, UNIQUE (ColumnName1, ColumnName 2));
Példa:
változtassa meg a linux könyvtár nevét
Hozzon létre egy tanulói táblát, és alkalmazzon EGYEDI kényszert egynél több táblázat oszlopára a táblázat létrehozásakor.
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));
Annak ellenőrzésére, hogy az egyedi megszorítás egynél több tábla oszlopára vonatkozik-e, és a tanulótábla sikeresen létrejött-e, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis az EGYEDI kényszer alkalmazásához egy meglévő táblázat oszlopára:
ALTER TABLE TableName ADD UNIQUE (ColumnName);
Példa:
Tegyük fel, hogy van egy meglévő táblázatos tanulónk, anélkül, hogy bármilyen megkötést alkalmaznánk. Később úgy döntöttünk, hogy egy EGYEDI megszorítást alkalmazunk a táblázat egyik oszlopára. Ezután a következő lekérdezést hajtjuk végre:
mysql> ALTER TABLE student ADD UNIQUE (StudentID);
Annak ellenőrzésére, hogy az egyedi megszorítás alkalmazva van-e a tábla oszlopára, és a tanulótábla sikeresen létrejött-e, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
3. ELSŐDLEGES KULCS
- A PRIMARY KEY Constraint a NOT NULL és az Unique megszorítások kombinációja.
- A NOT NULL megszorítás és az EGYEDI kényszer együtt ELSŐDLEGES kényszert alkot.
- Az oszlop, amelyre az elsődleges megszorítást alkalmaztuk, mindig egyedi értéket fog tartalmazni, és nem engedélyez null értékeket.
Az elsődleges kulcs kényszerének szintaxisa a táblázat létrehozása során:
CREATE TABLE TableName (ColumnName1 datatype PRIMARY KEY, ColumnName2 datatype,…., ColumnNameN datatype);
Példa:
Hozzon létre egy tanulói táblát, és alkalmazza az ELSŐDLEGES KULCS kényszert a táblázat létrehozásakor.
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));
Annak ellenőrzésére, hogy az elsődleges kulcs kényszere érvényesül-e a tábla oszlopára, és a tanulótábla sikeresen létrejött-e, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis az elsődleges kulcs megkötésének alkalmazásához egy meglévő tábla oszlopára:
ALTER TABLE TableName ADD PRIMARY KEY (ColumnName);
Példa:
Tegyük fel, hogy van egy meglévő táblázatos tanulónk, anélkül, hogy bármilyen megkötést alkalmaznánk. Később úgy döntöttünk, hogy a PRIMARY KEY kényszert alkalmazzuk a táblázat oszlopára. Ezután a következő lekérdezést hajtjuk végre:
mysql> ALTER TABLE student ADD PRIMARY KEY (StudentID);
Annak ellenőrzésére, hogy az elsődleges kulcs kényszere érvényesül-e a tanulótábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
4. IDEGEN KULCS
- Idegen kulcsot használnak a hivatkozás integritására.
- Ha két táblánk van, és az egyik tábla egy másik táblára hivatkozik, azaz ugyanaz az oszlop van mindkét táblában, és ez az oszlop elsődleges kulcsként működik egy táblában. Az adott oszlop idegen kulcsként fog működni egy másik táblában.
Szintaxis az idegen kulcs kényszer alkalmazásához a tábla létrehozása során:
CREATE TABLE tablename(ColumnName1 Datatype(SIZE) PRIMARY KEY, ColumnNameN Datatype(SIZE), FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName));
Példa:
Hozzon létre egy alkalmazotti táblát, és alkalmazza a FOREIGN KEY kényszert a tábla létrehozása során.
Ahhoz, hogy bármilyen táblán idegen kulcsot hozzunk létre, először létre kell hoznunk egy elsődleges kulcsot egy táblán.
mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40));
Annak ellenőrzésére, hogy az elsődleges kulcs kényszere érvényesül-e az alkalmazotti tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC employee;
Most egy lekérdezést fogunk írni egy idegen kulcs alkalmazására a részlegtáblában, hivatkozva az alkalmazotti tábla elsődleges kulcsára, azaz az Emp_ID-re.
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));
Annak ellenőrzésére, hogy az idegenkulcs-kényszer alkalmazva van-e a részlegtábla oszlopában, a következő lekérdezést hajtjuk végre:
mysql> DESC department;
Szintaxis az idegen kulcs kényszer alkalmazásához a kényszernévvel:
ha más utasítást a java-ban
CREATE TABLE tablename(ColumnName1 Datatype PRIMARY KEY, ColumnNameN Datatype(SIZE), CONSTRAINT ConstraintName FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName));
Példa:
Hozzon létre egy alkalmazotti táblát, és alkalmazza a FOREIGN KEY kényszert kényszernévvel a tábla létrehozásakor.
Ahhoz, hogy bármilyen táblán idegen kulcsot hozzunk létre, először létre kell hoznunk egy elsődleges kulcsot egy táblán.
mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40));
Annak ellenőrzésére, hogy az elsődleges kulcs kényszere érvényesül-e a tanulótábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC employee;
Most egy lekérdezést fogunk írni egy olyan kényszernévvel rendelkező idegen kulcs alkalmazására a részlegtáblában, amely az alkalmazotti tábla elsődleges kulcsára, azaz az Emp_ID-re hivatkozik.
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));
Annak ellenőrzésére, hogy az idegenkulcs-kényszer alkalmazva van-e a részlegtábla oszlopában, a következő lekérdezést hajtjuk végre:
mysql> DESC department;
Szintaxis az idegen kulcs kényszer alkalmazásához egy meglévő tábla oszlopára:
ALTER TABLE Parent_TableName ADD FOREIGN KEY (ColumnName) REFERENCES Child_TableName (ColumnName);
Példa:
Vegye figyelembe, hogy van egy meglévő asztali alkalmazottunk és osztályunk. Később úgy döntöttünk, hogy egy FOREIGN KEY kényszert alkalmazunk a részlegtábla oszlopára. Ezután a következő lekérdezést hajtjuk végre:
mysql> DESC employee;
mysql> ALTER TABLE department ADD FOREIGN KEY (Emp_ID) REFERENCES employee (Emp_ID);
Annak ellenőrzésére, hogy az idegenkulcs-kényszer alkalmazva van-e a részlegtábla oszlopában, a következő lekérdezést hajtjuk végre:
mysql> DESC department;
5. ELLENŐRIZZE
- Amikor egy ellenőrzési megszorítást alkalmaznak a tábla oszlopára, és a felhasználó be akarja szúrni az értéket, akkor az értéket először ellenőrizni kell bizonyos feltételekre, mielőtt beilleszti az értéket az oszlopba.
Szintaxis az ellenőrzési kényszer alkalmazásához egyetlen oszlopra:
CREATE TABLE TableName (ColumnName1 datatype CHECK (ColumnName1 Condition), ColumnName2 datatype,…., ColumnNameN datatype);
Példa:
Hozzon létre egy tanulói táblázatot, és alkalmazza az ELLENŐRZÉS kényszert, hogy ellenőrizze a 15-nél kisebb vagy annál kisebb korosztályt a táblázat létrehozásakor.
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></=>
Szintaxis az ellenőrzési kényszer több oszlopra történő alkalmazásához:
CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype CHECK (ColumnName1 Condition AND ColumnName2 Condition),…., ColumnNameN datatype);
Példa:
Hozzon létre egy tanulói táblázatot, és alkalmazza az ELLENŐRZÉS kényszert, hogy ellenőrizze a 15 évnél kisebb vagy azzal egyenlő életkort és a 85-nél nagyobb százalékot a táblázat létrehozásakor.
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));
Annak ellenőrzésére, hogy az ellenőrzési kényszer érvényes-e az életkor és százalékos oszlopra, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis az ellenőrzési kényszer alkalmazásához egy meglévő tábla oszlopára:
olyan weboldal, mint a coomeet
ALTER TABLE TableName ADD CHECK (ColumnName Condition);
Példa:
Vegyük figyelembe, hogy van egy asztalos tanulónk. Később úgy döntöttünk, hogy alkalmazzuk a CHECK megkötést a tanulói táblázat oszlopában. Ezután a következő lekérdezést hajtjuk végre:
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. ALAPÉRTELMEZETT
Ha egy alapértelmezett megszorítást alkalmaznak a tábla oszlopára, és a felhasználó nem adta meg a beillesztendő értéket, akkor az alapértelmezett megszorítás alkalmazásakor megadott alapértelmezett érték kerül beszúrásra az adott oszlopba.
Szintaxis az alapértelmezett kényszer alkalmazásához a táblázat létrehozása során:
CREATE TABLE TableName (ColumnName1 datatype DEFAULT Value, ColumnName2 datatype,…., ColumnNameN datatype);
Példa:
Hozzon létre egy tanulói táblát, és alkalmazza az alapértelmezett kényszert a táblázat létrehozásakor.
latex asztal
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]');
Annak ellenőrzésére, hogy az alapértelmezett megszorítás érvényesül-e a tanulói tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis alapértelmezett kényszer alkalmazásához egy meglévő táblázat oszlopára:
ALTER TABLE TableName ALTER ColumnName SET DEFAULT Value;
Példa:
Vegyük figyelembe, hogy van egy asztalos tanulónk. Később úgy döntöttünk, hogy a DEFAULT megszorítást alkalmazzuk a tanulói táblázat oszlopában. Ezután a következő lekérdezést hajtjuk végre:
mysql> ALTER TABLE student ALTER Student_Email_ID SET DEFAULT '[email protected]';
Annak ellenőrzésére, hogy az alapértelmezett megszorítás érvényesül-e a tanulói tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
7. INDEX LÉTREHOZÁSA
A CREATE INDEX megszorítás egy index létrehozására szolgál a táblán. Az indexek nem láthatók a felhasználó számára, de segítenek a felhasználónak felgyorsítani a keresési sebességet vagy az adatok lekérését az adatbázisból.
Szintaxis index létrehozásához egyetlen oszlopban:
CREATE INDEX IndexName ON TableName (ColumnName 1);
Példa:
Hozzon létre egy indexet a tanulói táblán, és alkalmazza az alapértelmezett kényszert a táblázat létrehozásakor.
mysql> CREATE INDEX idx_StudentID ON student (StudentID);
Annak ellenőrzésére, hogy az index létrehozási kényszere érvényesül-e a tanulói tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis index létrehozásához több oszlopon:
CREATE INDEX IndexName ON TableName (ColumnName 1, ColumnName 2, ColumnName N);
Példa:
mysql> CREATE INDEX idx_Student ON student (StudentID, Student_PhoneNumber);
Annak ellenőrzésére, hogy az index létrehozási kényszere érvényesül-e a tanulói tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
Szintaxis index létrehozásához egy meglévő táblán:
ALTER TABLE TableName ADD INDEX (ColumnName);
Vegyük figyelembe, hogy van egy asztalos tanulónk. Később úgy döntöttünk, hogy a DEFAULT megszorítást alkalmazzuk a tanulói táblázat oszlopában. Ezután a következő lekérdezést hajtjuk végre:
mysql> ALTER TABLE student ADD INDEX (StudentID);
Annak ellenőrzésére, hogy az index létrehozási kényszere érvényesül-e a tanulói tábla oszlopára, a következő lekérdezést hajtjuk végre:
mysql> DESC student;
=15>=>