Verwijder de NOT NULL-beperking in Postgres

Verwijder De Not Null Beperking In Postgres



In relationele databases zoals PostgreSQL zijn beperkingen cruciaal voor het handhaven van de gegevensintegriteit en het afdwingen van specifieke regels voor tabelkolommen. Een dergelijke beperking is de beperking 'NIET NULL'. In deze zelfstudie verkennen we het concept van de NOT NULL-beperking en geven we een stapsgewijze handleiding voor het maken en verwijderen ervan in PostgreSQL.

Wat is een NOT NULL-beperking?

De beperking NOT NULL zorgt ervoor dat een kolom geen null-waarden kan bevatten die vereisen dat elke rij in de tabel een niet-null-waarde heeft voor die specifieke kolom.

Vereisten voor zelfstudie:

Om de instructies in dit bericht te volgen, gaan we ervan uit dat u aan de volgende vereisten voldoet:







  1. Geïnstalleerde PostgreSQL-server op uw computer
  2. Basiskennis SQL
  3. Toestemming om de databasetabelobjecten te maken, zoals beperkingen, functies, enz

Voorbeeldtabel:

Laten we beginnen met het opzetten van een voorbeeldtabel met kolommen die een niet-null-beperking bevatten. Neem de volgende create table-instructie die een basistabel opzet die lijkt op de wp_users-tabel in WordPress:



MAAK TABEL wp_users (
ID SERIËLE PRIMAIRE SLEUTEL,
user_login VARCHAR(60) NIET NULL,
user_pass VARCHAR(255) NIET NULL,
user_nicename VARCHAR(50) NIET NULL,
user_email VARCHAR(100) NIET NULL,
gebruiker_url VARCHAR(100),
user_registered TIMESTAMP NIET NULL STANDAARD current_timestamp,
user_activation_key VARCHAR(255),
user_status INT NOT NULL STANDAARD 0,
display_name VARCHAR(250) NIET NULL
);

Uit de gegeven query zult u opmerken dat de meeste kolommen een NOT NULL-beperking bevatten.



De meest efficiënte methode voor het maken van een NOT NULL-beperking in een bepaalde kolom is tijdens het maken van de tabel. Dit zorgt ervoor dat alle gegevens die aan de tabel worden toegevoegd, voldoen aan de regels van de beperking.





Als u echter een beperking aan een bestaande tabel toevoegt, zijn de regels alleen van toepassing op de gegevens die na de beperking worden toegevoegd en niet op bestaande gegevens. Dit kan leiden tot inconsistenties, vooral in grote tabellen.

Voeg een NOT NULL-beperking toe

In sommige gevallen wilt u misschien een NOT NULL-beperking toevoegen aan een bestaande tabel. U kunt bijvoorbeeld de opdracht ALTER TABLE gebruiken, gevolgd door de clausule ALTER COLUMN.



De syntaxis is als volgt:

VERANDER TABEL tabel_naam
VERANDER KOLOM kolomnaam SET NIET NULL;

Vervang de table_name door uw doeltabel en de column_name door de doelkolom waarop u de beperking wilt toepassen.

Controleer de beperking

U kunt controleren of de beperking voor een bepaalde tabel bestaat met behulp van de opdracht '\d' in het PSQL-hulpprogramma.

\d tabel_naam

Voorbeeld:

sample_db=# \d wp_users;

De resulterende uitvoer is als volgt:

Verwijder de NOT NULL-beperking

U kunt ook de beperking NOT NULL uit een bepaalde kolom verwijderen. Daarvoor kunnen we de clausules ALTER TABLE en ALTER COLUMN als volgt gebruiken:

VERANDER TABEL tabel_naam
VERANDER KOLOM kolomnaam DROP NOT NULL;

Om bijvoorbeeld de NOT NULL-beperking uit de user_url-kolom van de wp_users-tabel te verwijderen, kunnen we de volgende query uitvoeren:

ALTER TABLE wp_users ALTER COLUMN user_url DROP NOT NULL;

Dit zou de beperking van de tabel moeten laten vallen.

Conclusie

Deze tutorial onderzocht hoe we kunnen werken met de NOT NOLL-beperking in PostgreSQL. We hebben ook onderzocht hoe een bestaande NOT NULL-beperking uit een bepaalde kolom kan worden verwijderd.