Quines són les restriccions SQL i els seus diferents tipus?



Aquest article és una guia completa sobre com utilitzar els diferents tipus de restriccions SQL amb diversos comandaments SQL, i es va elaborar el mateix amb exemples.

Com que hi ha una gran quantitat de dades al , és molt important per a tots nosaltres augmentar la precisió i la fiabilitat de les dades presents a la base de dades. Bé, les restriccions SQL s’utilitzen per mantenir el mateix. Hi ha diferents tipus de restriccions que es podrien utilitzar. En aquest article, discutiré aquestes restriccions amb exemples.

En aquest article es tractaran els temes següents:





  1. Què són les restriccions?
  2. Restriccions disponibles a SQL:

Què són les restriccions SQL?

Les restriccions SQL s’utilitzen per especificar les regles de les dades d’una taula. S’utilitzen per limitar quin tipus de dades s’han d’emmagatzemar a la base de dades i tenen com a objectiu augmentar la precisió i la fiabilitat de les dades emmagatzemades a la base de dades.

Per tant, les restriccions asseguren que no hi ha cap violació quant a una transacció de les dades, tot i que hi ha alguna infracció que hagi finalitzat l'acció.



Hi ha dos tipus de restriccions que es poden aplicar:

  1. Restriccions a nivell de columna - Aquestes restriccions s'apliquen a una sola columna
  2. Restriccions a nivell de taula - Aquestes restriccions són l'aplicació a la taula completa

Per avançar en aquest article, entenem els diferents tipus de restriccions. A més, examinaré la taula següent per ajudar-vos a entendre millor.

Hi ha diferents restriccions SQL disponibles:

Restricció NO NULA

La restricció NOT NULL assegura que una columna no pot tenir un valor NULL. Podeu utilitzar la restricció NOT NULL mentre creant la taula base de dades o mentre la modifiqueu.



Exemple

Restricció NO NULA a CREATE TABLE

Escriviu una consulta per crear la taula Estudiants anterior, on StudentID i StudentName no poden ser NULS.

CREA TAULA Estudiants (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255))

Restricció NOT NULL a ALTER TABLE

Escriviu una consulta per modificar la taula Estudiants anterior, on s'ha d'afegir una nova columna de DOB i no hauria de tenir cap valor NUL.

ALTER TAULA Els estudiants AFEGEIXEN COLUMNA DOB Any NO NUL

Seguint amb aquest article sobre restriccions SQL, entenem com utilitzar la restricció ÚNICA.

Restricció ÚNICA

La restricció ÚNICA s’utilitza per assegurar-se que tots els valors d’una columna són únics. Podeu utilitzar la restricció ÚNICA en diverses columnes o en una sola columna amb. A part d'això, podeu seguir endavant i utilitzar la restricció ÚNICA per modificar les taules existents.

Nota:

  1. Mentre es creen taules, una restricció PRIMARY KEY té automàticament una restricció ÚNICA, per garantir la singularitat d’una columna.
  2. Una taula pot tenir moltes restriccions ÚNIQUES, però pot tenir una única restricció de clau primària.

Exemple:

Restricció ÚNICA a CREATE TABLE

Escriviu una consulta per crear una taula Estudiants, amb columnes StudentID, StudentName, Age i City. Aquí, el StudentID ha de ser únic per a cada registre.

CREA TAULA Estudiants (StudentID int NOT NULL UNIQUE, StudentName varchar (255) NOT NULL, Age int, City varchar (255))

Anomeneu una restricció ÚNICA en diverses columnes

Per anomenar una restricció única i definir-la per a diverses columnes, podeu consultar l'exemple següent:

Escriviu una consulta per crear una taula Estudiants, amb columnes StudentID, StudentName, Age i City. Aquí, StudentID i StudentName han de ser exclusius per a cada registre.

CREA TAULA Estudiants (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255) CONSTRAINT Stu_Example UNIQUE (StudentID, StudentName))

Aquí, Stu_Example és el nom donat a la restricció única aplicada a StudentID i StudentName.

Restricció ÚNICA a ALTER TABLE

Escriviu una consulta per modificar la taula Estudiants, on s’ha d’afegir una restricció ÚNICA a la columna StudentID.

ALTER TAULA Els estudiants AFEGEIXEN UNIC (StudentID)

De la mateixa manera, si voleu utilitzar la restricció ÚNICA en diverses columnes i també nomenar-la, podeu escriure una consulta de la següent manera:

ALTER TAULA Estudiants AFEGEIX CONSTRAINT Stu_Example UNIQUE (StudentID, StudentName)

Eliminar una restricció ÚNICA

Per deixar caure la restricció especificada en una columna, podeu utilitzar la convenció de noms que podríeu haver esmentat mentre afegiu la restricció.

Per exemple, si hem d’escriure una consulta per eliminar la restricció ÚNICA que hem creat més amunt, podeu escriure la consulta de la següent manera:

ALTER TAULA Estudiants DROP CONSTRAINT Stu_Example

A continuació, en aquest article sobre restriccions SQL, entenem com utilitzar la restricció CHECK.

CONSTRUCCIÓ DE COMPROVACIÓ

La restricció CHECK assegura que tots els valors d'una columna compleixen una condició específica.

com utilitzar el banc de treball mysql

Exemple:

COMPROVEU la restricció a CREA UNA TAULA

Escriviu una consulta per crear una taula Estudiants, amb columnes StudentID, StudentName, Age i City. Aquí, la ciutat ha de ser MUmbai.

CREA TAULA Estudiants (StudentID int NOT NULL UNIQUE, StudentName varchar (255) NOT NULL, Age int, City varchar (255) CHECK (City == 'Mumbai'))

COMPROVACIÓ de la restricció a diverses columnes

Per utilitzar la restricció de comprovació en diverses columnes, podeu escriure una consulta de la següent manera:

Escriviu una consulta per crear una taula Estudiants, amb columnes StudentID, StudentName, Age i City. Aquí, la ciutat ha de ser Bombai i l'edat dels estudiants ha de ser> 19.

CREA TAULA Estudiants (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255) CHECK (City == & rsquoMumbai & rsquo AND Age> 19))

De la mateixa manera, també podeu utilitzar la restricció CHECK amb l'ordre ALTER TABLE. Consulteu a continuació.

CONSULTA la restricció a ALTER TABLE

Escriviu una consulta per modificar la taula Estudiants, on s'ha d'afegir una restricció CHECK a la columna Ciutat. Aquí, la ciutat ha de ser Bombai.

ALTER TAULA Els estudiants AFEGEIX LA COMPROBACIÓ (Ciutat == 'Mumbai')

De la mateixa manera, si voleu utilitzar la restricció CHECK donant-li un nom, podeu escriure una consulta de la següent manera:

ALTER TAULA Estudiants AFEGEIX CONSTRAINT StuCheckExample CHECK (City == 'Mumbai')

Eliminar una restricció CHECK

Per deixar caure la restricció especificada en una columna, podeu utilitzar la convenció de noms que podríeu haver esmentat mentre afegiu la restricció.

Per exemple, si hem d’escriure una consulta per eliminar la restricció CHECK que hem creat anteriorment, podeu escriure la consulta de la següent manera:

ALTER TAULA Estudiants DROP CONSTRAINT StuCheckExample

Seguint amb aquest article sobre restriccions SQL, entenem com utilitzar la restricció DEFAULT.

Restricció DEFAULT

La restricció DEFAULT s'utilitza per esmentar un conjunt de valors predeterminats per a una columna quan no s'especifica cap valor. De manera similar a la de les altres restriccions, podem utilitzar aquesta restricció a l’ordre de la taula CREATE i ALTER.

Exemple

Escriviu una consulta per crear una taula Estudiants, amb columnes StudentID, StudentName, Age i City. També quan no hi ha cap valor inserit a la columna Ciutat, s'ha d'incloure Delhi automàticament.

CREA TAULA Estudiants (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255) DEFAULT 'Delhi')

Restricció DEFAULT a ALTER TABLE

Per utilitzar la restricció DEFAULT amb el fitxer Ordre ALTER TABLE , podeu escriure una consulta de la següent manera:

ALTER TAULA Els estudiants AFEGEIXEN CONSTRAINT StuDefauExemple DEFAULT 'Mumbai' FOR City

Suprimiu una restricció DEFAULT

Per eliminar la restricció DEFAULT, podeu utilitzar l'ordre ALTER TABLE de la següent manera:

ALTER TAULA Estudiants ALTER COLUMN City DROP DEFAULT

A continuació, en aquest article sobre restriccions SQL, entenem com utilitzar la restricció INDEX.

ÍNDEX Restricció

L’ÍNDEXLa restricció s'utilitza per crear índexs a la taula. Amb l'ajut d'aquests índexs podeu crear i recuperar dades de la base de dades molt ràpidament.

Sintaxi

--Crear un índex on es permetin valors duplicats CREAR INDEX IndexName ON TableName Name (ColumnName1, ColumnName2, ... ColumnName (N)) - Crear un índex on no es permetin valors duplicats CREAR UNIQUE INDEX IndexName ON TableName (ColumnName1, ColumnName2, ... Nom de columna (N))

Exemple

Escriviu una consulta per crear un índex amb el nom Stu_index a la taula Estudiants que emmagatzemi StudentName.

CREA ÍNDEX Stu_index ON Estudiants (StudentName)

De la mateixa manera, per suprimir un índex de la taula, heu d’utilitzar l’ordre DROP amb el nom de l’índex.

DROP INDEX Students.Stu_index

A part de les restriccions anteriors, el CLAU PRIMÀRIA i la CLAU ESTRANGERA també es consideren restriccions. La restricció PRIMARY KEY s'utilitza per definir restriccions sobre com una columna específica identifica de manera única totes les tuples. El CLAU ESTRANGERA La restricció s'utilitza per relacionar dues taules basades en una relació.

Amb això, arribem al final d’aquest article. Espero que hàgiu entès com utilitzar les diverses restriccions presents a la base de dades. Si voleu obtenir més informació MySQL i conegueu aquesta base de dades relacional de codi obert i, a continuació, consulteu la nostra que inclou formació en directe dirigida per un instructor i experiència en projectes reals. Aquesta formació us ajudarà a entendre en profunditat MySQL i us ajudarà a dominar el tema.

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d’aquest article sobre restriccions SQL i us respondré.