Restriktioner i SQL betyder att vi tillämpar vissa villkor eller begränsningar på databasen. Detta innebär vidare att vi kontrollerar några villkor innan vi infogar data i databasen. Om villkoret som vi har tillämpat på databasen gäller för de data som ska infogas, kommer endast data att infogas i databastabellerna.
Begränsningar i SQL kan kategoriseras i två typer:
Kolumnnivåbegränsning används för att tillämpa en begränsning på en enda kolumn.
Tabellnivåbegränsning används för att tillämpa en begränsning på flera kolumner.
Några av de verkliga exemplen på begränsningar är följande:
- Varje person har ett unikt e-post-ID. Detta beror på att när du skapar ett e-postkonto för vilken användare som helst, kommer e-posttjänsterna som Gmail, Yahoo eller någon annan e-posttjänst alltid att kontrollera tillgängligheten för det e-post-ID som användaren vill ha själv. Om någon annan användare redan tar det e-post-ID som användaren vill ha, kan det ID:t inte tilldelas en annan användare. Detta betyder helt enkelt att inga två användare kan ha samma e-post-ID på samma e-posttjänst. Så här är e-post-id:t begränsningen på databasen för e-posttjänster.
- Närhelst vi ställer in ett lösenord för något system finns det vissa begränsningar som måste följas. Dessa begränsningar kan inkludera följande:
- Det måste finnas en versal i lösenordet.
- Lösenordet måste vara minst åtta tecken långt.
- Lösenordet måste innehålla minst en specialsymbol.
Begränsningar tillgängliga i SQL är:
- INTE NULL
- UNIK
- PRIMÄRNYCKEL
- FRÄMMANDE NYCKEL
- KOLLA UPP
- STANDARD
- SKAPA INDEX
Låt oss nu försöka förstå de olika begränsningarna som finns tillgängliga i SQL mer i detalj med hjälp av exempel. Vi kommer att använda MySQL-databas för att skriva alla frågor.
1. INTE NULL
- NULL betyder tom, dvs. värdet är inte tillgängligt.
- Närhelst en tabells kolumn deklareras som NOT NULL, kan värdet för den kolumnen inte vara tomt för någon av tabellens poster.
- Det måste finnas ett värde i kolumnen som NOT NULL-begränsningen tillämpas på.
OBS: NULL betyder inte noll. NULL betyder tom kolumn, inte ens noll.
Syntax för att tillämpa NOT NULL-begränsningen under skapande av tabeller:
CREATE TABLE TableName (ColumnName1 datatype NOT NULL, ColumnName2 datatype,…., ColumnNameN datatype);
Exempel:
Skapa en elevtabell och tillämpa en NOT NULL-begränsning på en av tabellens kolumner medan du skapar en tabell.
CREATE TABLE student(StudentID INT NOT NULL, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40));
För att verifiera att begränsningen inte null tillämpas på tabellens kolumn och att elevtabellen har skapats framgångsrikt, kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att tillämpa NOT NULL-begränsningen på en befintlig tabells kolumn:
ALTER TABLE TableName CHANGE Old_ColumnName New_ColumnName Datatype NOT NULL;
Exempel:
Tänk att vi har en befintlig tabellstudent, utan några begränsningar på den. Senare bestämde vi oss för att tillämpa en NOT NULL-begränsning på en av tabellens kolumner. Sedan kör vi följande fråga:
mysql> ALTER TABLE student CHANGE StudentID StudentID INT NOT NULL;
För att verifiera att begränsningen inte null tillämpas på elevtabellens kolumn, kommer vi att köra följande fråga:
mysql> DESC student;
2. UNIK
- Dubblettvärden är inte tillåtna i de kolumner som UNIQUE-begränsningen tillämpas på.
- Kolumnen med den unika begränsningen kommer alltid att innehålla ett unikt värde.
- Den här begränsningen kan tillämpas på en eller flera kolumner i en tabell, vilket innebär att mer än en unik begränsning kan finnas i en enda tabell.
- Med hjälp av UNIQUE-begränsningen kan du även modifiera de redan skapade tabellerna.
Syntax för att tillämpa den UNIKA begränsningen på en enda kolumn:
CREATE TABLE TableName (ColumnName1 datatype UNIQUE, ColumnName2 datatype,…., ColumnNameN datatype);
Exempel:
Skapa en elevtabell och tillämpa en UNIK begränsning på en av tabellens kolumner medan du skapar en tabell.
mysql> CREATE TABLE student(StudentID INT UNIQUE, Student_FirstName VARCHAR(20), Student_LastName VARCHAR(20), Student_PhoneNumber VARCHAR(20), Student_Email_ID VARCHAR(40));
För att verifiera att den unika begränsningen tillämpas på tabellens kolumn och att elevtabellen har skapats framgångsrikt, kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att tillämpa UNIQUE-begränsningen på mer än en kolumn:
mysql unik nyckel
CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype,…., ColumnNameN datatype, UNIQUE (ColumnName1, ColumnName 2));
Exempel:
Skapa en elevtabell och tillämpa en UNIK begränsning på mer än en tabells kolumn samtidigt som du skapar en tabell.
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));
För att verifiera att den unika begränsningen tillämpas på mer än en tabells kolumn och att elevtabellen har skapats framgångsrikt, kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att tillämpa UNIQUE-begränsningen på en befintlig tabells kolumn:
ALTER TABLE TableName ADD UNIQUE (ColumnName);
Exempel:
Tänk att vi har en befintlig tabellstudent, utan några begränsningar på den. Senare bestämde vi oss för att tillämpa en UNIK begränsning på en av tabellens kolumner. Sedan kör vi följande fråga:
mysql> ALTER TABLE student ADD UNIQUE (StudentID);
För att verifiera att den unika begränsningen tillämpas på tabellens kolumn och att elevtabellen har skapats framgångsrikt, kommer vi att köra följande fråga:
mysql> DESC student;
3. PRIMÄRNYCKEL
- PRIMARY KEY Constraint är en kombination av NOT NULL och Unique constraints.
- NOT NULL-begränsning och en UNIK begränsning bildar tillsammans en PRIMÄR begränsning.
- Kolumnen som vi har tillämpat den primära begränsningen på kommer alltid att innehålla ett unikt värde och tillåter inte nullvärden.
Syntax för primärnyckelrestriktion under skapande av tabeller:
byt namn på katalogen linux
CREATE TABLE TableName (ColumnName1 datatype PRIMARY KEY, ColumnName2 datatype,…., ColumnNameN datatype);
Exempel:
Skapa en elevtabell och tillämpa PRIMARY KEY-begränsningen när du skapar en tabell.
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));
För att verifiera att den primära nyckelbegränsningen tillämpas på tabellens kolumn och att elevtabellen har skapats framgångsrikt, kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att tillämpa primärnyckelbegränsningen på en befintlig tabells kolumn:
ALTER TABLE TableName ADD PRIMARY KEY (ColumnName);
Exempel:
Tänk att vi har en befintlig tabellstudent, utan några begränsningar på den. Senare bestämde vi oss för att tillämpa PRIMARY KEY-begränsningen på tabellens kolumn. Sedan kör vi följande fråga:
mysql> ALTER TABLE student ADD PRIMARY KEY (StudentID);
För att verifiera att den primära nyckelbegränsningen tillämpas på elevtabellens kolumn kommer vi att köra följande fråga:
mysql> DESC student;
4. UTLÄNDSK NYCKEL
- En främmande nyckel används för referensintegritet.
- När vi har två tabeller och en tabell tar referens från en annan tabell, dvs samma kolumn finns i båda tabellerna och den kolumnen fungerar som en primärnyckel i en tabell. Den specifika kolumnen kommer att fungera som en främmande nyckel i en annan tabell.
Syntax för att tillämpa en främmande nyckel-begränsning under skapandet av tabeller:
CREATE TABLE tablename(ColumnName1 Datatype(SIZE) PRIMARY KEY, ColumnNameN Datatype(SIZE), FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName));
Exempel:
Skapa en anställdstabell och tillämpa FOREIGN KEY-begränsningen när du skapar en tabell.
För att skapa en främmande nyckel på en tabell måste vi först skapa en primärnyckel på en tabell.
mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40));
För att verifiera att den primära nyckelbegränsningen tillämpas på anställdtabellens kolumn, kommer vi att köra följande fråga:
mysql> DESC employee;
Nu kommer vi att skriva en fråga för att applicera en främmande nyckel på avdelningstabellen med hänvisning till primärnyckeln för anställdstabellen, dvs 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));
För att verifiera att den främmande nyckelbegränsningen tillämpas på avdelningstabellens kolumn, kommer vi att utföra följande fråga:
mysql> DESC department;
Syntax för att tillämpa den främmande nyckelbegränsningen med begränsningsnamn:
CREATE TABLE tablename(ColumnName1 Datatype PRIMARY KEY, ColumnNameN Datatype(SIZE), CONSTRAINT ConstraintName FOREIGN KEY( ColumnName ) REFERENCES PARENT_TABLE_NAME(Primary_Key_ColumnName));
Exempel:
Skapa en anställd tabell och tillämpa FOREIGN KEY-begränsningen med ett begränsningsnamn när du skapar en tabell.
För att skapa en främmande nyckel på en tabell måste vi först skapa en primärnyckel på en tabell.
delsträng av sträng java
mysql> CREATE TABLE employee (Emp_ID INT NOT NULL PRIMARY KEY, Emp_Name VARCHAR (40), Emp_Salary VARCHAR (40));
För att verifiera att den primära nyckelbegränsningen tillämpas på elevtabellens kolumn kommer vi att köra följande fråga:
mysql> DESC employee;
Nu kommer vi att skriva en fråga för att tillämpa en främmande nyckel med ett begränsningsnamn på avdelningstabellen som hänvisar till den primära nyckeln för anställdtabellen, dvs 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));
För att verifiera att den främmande nyckelbegränsningen tillämpas på avdelningstabellens kolumn, kommer vi att utföra följande fråga:
mysql> DESC department;
Syntax för att tillämpa den främmande nyckelbegränsningen på en befintlig tabells kolumn:
ALTER TABLE Parent_TableName ADD FOREIGN KEY (ColumnName) REFERENCES Child_TableName (ColumnName);
Exempel:
Tänk att vi har en befintlig bordsanställd och avdelning. Senare bestämde vi oss för att tillämpa en FOREIGN KEY-begränsning på avdelningstabellens kolumn. Sedan kör vi följande fråga:
mysql> DESC employee;
mysql> ALTER TABLE department ADD FOREIGN KEY (Emp_ID) REFERENCES employee (Emp_ID);
För att verifiera att den främmande nyckelbegränsningen tillämpas på avdelningstabellens kolumn, kommer vi att utföra följande fråga:
mysql> DESC department;
5. KONTROLLERA
- Närhelst en kontrollbegränsning tillämpas på tabellens kolumn och användaren vill infoga värdet i den, kommer värdet först att kontrolleras för vissa villkor innan värdet infogas i den kolumnen.
Syntax för att tillämpa kontrollbegränsning på en enda kolumn:
CREATE TABLE TableName (ColumnName1 datatype CHECK (ColumnName1 Condition), ColumnName2 datatype,…., ColumnNameN datatype);
Exempel:
Skapa en elevtabell och tillämpa CHECK-begränsningen för att kontrollera om åldern är mindre än eller lika med 15 när du skapar en tabell.
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></=>
Syntax för att tillämpa kontrollbegränsning på flera kolumner:
java lägg till sträng
CREATE TABLE TableName (ColumnName1 datatype, ColumnName2 datatype CHECK (ColumnName1 Condition AND ColumnName2 Condition),…., ColumnNameN datatype);
Exempel:
Skapa en elevtabell och tillämpa CHECK-begränsningen för att kontrollera åldern under eller lika med 15 och en procentandel större än 85 när du skapar en tabell.
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));
För att verifiera att kontrollbegränsningen tillämpas på kolumnen ålder och procent, kör vi följande fråga:
mysql> DESC student;
Syntax för att tillämpa kontrollbegränsning på en befintlig tabells kolumn:
ALTER TABLE TableName ADD CHECK (ColumnName Condition);
Exempel:
Tänk att vi har en befintlig bordselev. Senare bestämde vi oss för att tillämpa CHECK-begränsningen på elevtabellens kolumn. Sedan kör vi följande fråga:
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. STANDARD
Närhelst en standardbegränsning tillämpas på tabellens kolumn och användaren inte har specificerat värdet som ska infogas i den, kommer standardvärdet som angavs när standardbegränsningen tillämpades att infogas i den specifika kolumnen.
Syntax för att tillämpa standardbegränsning under skapande av tabeller:
CREATE TABLE TableName (ColumnName1 datatype DEFAULT Value, ColumnName2 datatype,…., ColumnNameN datatype);
Exempel:
Skapa en elevtabell och tillämpa standardbegränsningen när du skapar en tabell.
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]');
För att verifiera att standardbegränsningen tillämpas på elevtabellens kolumn kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att tillämpa standardbegränsning på en befintlig tabells kolumn:
ALTER TABLE TableName ALTER ColumnName SET DEFAULT Value;
Exempel:
Tänk att vi har en befintlig bordselev. Senare bestämde vi oss för att tillämpa DEFAULT-begränsningen på elevtabellens kolumn. Sedan kör vi följande fråga:
mysql> ALTER TABLE student ALTER Student_Email_ID SET DEFAULT '[email protected]';
För att verifiera att standardbegränsningen tillämpas på elevtabellens kolumn kommer vi att köra följande fråga:
mysql> DESC student;
7. SKAPA INDEX
CREATE INDEX-begränsning används för att skapa ett index på tabellen. Index är inte synliga för användaren, men de hjälper användaren att snabba upp sökhastigheten eller hämtning av data från databasen.
Syntax för att skapa ett index på en kolumn:
CREATE INDEX IndexName ON TableName (ColumnName 1);
Exempel:
Skapa ett index på elevtabellen och tillämpa standardbegränsningen när du skapar en tabell.
mysql> CREATE INDEX idx_StudentID ON student (StudentID);
För att verifiera att begränsningen skapa index tillämpas på elevtabellens kolumn, kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att skapa ett index på flera kolumner:
css gräns
CREATE INDEX IndexName ON TableName (ColumnName 1, ColumnName 2, ColumnName N);
Exempel:
mysql> CREATE INDEX idx_Student ON student (StudentID, Student_PhoneNumber);
För att verifiera att begränsningen skapa index tillämpas på elevtabellens kolumn, kommer vi att köra följande fråga:
mysql> DESC student;
Syntax för att skapa ett index på en befintlig tabell:
ALTER TABLE TableName ADD INDEX (ColumnName);
Tänk att vi har en befintlig bordselev. Senare bestämde vi oss för att tillämpa DEFAULT-begränsningen på elevtabellens kolumn. Sedan kör vi följande fråga:
mysql> ALTER TABLE student ADD INDEX (StudentID);
För att verifiera att begränsningen skapa index tillämpas på elevtabellens kolumn, kommer vi att köra följande fråga:
mysql> DESC student;
=15>=>