sql >> Database >  >> RDS >> Sqlserver

Een tabel maken in SQL Server (T-SQL)

Het maken van een SQL Server-databasetabel met T-SQL kan een kleine hoeveelheid code of een grote hoeveelheid bevatten, afhankelijk van uw vereisten voor de tabel.

In dit artikel maak ik een basistabel met T-SQL waarvoor een minimale hoeveelheid code vereist is.

Syntaxis

De basissyntaxis voor het maken van een tabel met T-SQL gaat als volgt:

CREATE TABLE
    { database_name.schema_name.table_name | schema_name.table_name | table_name }
    ( { <column_definition> } [ ,...n ] )
[ ; ]

Wat dit in feite betekent, is dat u uw verklaring begint met CREATE TABLE , gevolgd door de tabelnaam. De tabelnaam kan worden voorafgegaan door de schemanaam of kan worden voorafgegaan door zowel de databasenaam als de schemanaam.

Als je dat eenmaal hebt gedaan, definiëren de volgende regels de kolommen die de tabel zal bevatten. U typt dus elke kolomnaam, gevolgd door de definitie ervan.

Voorbeeld

Hier is een voorbeeld van een van de tabellen die ik in mijn artikel heb gemaakt, waarin wordt uitgelegd hoe je een database maakt.

CREATE TABLE Artists (
  ArtistId int IDENTITY(1,1) NOT NULL PRIMARY KEY,
  ArtistName nvarchar(255) NOT NULL,
  ActiveFrom date
);

Voordat u tabellen maakt, moet u eerst de database maken. In mijn geval werd het eenvoudig gedaan met CREATE DATABASE Music hoewel u indien nodig extra opties kunt toevoegen.

In het bovenstaande voorbeeld is de tabelnaam Artists , en het bevat drie kolommen; ArtistId , ArtistName , en ActiveFrom .

De naam van elke kolom wordt gevolgd door de definitie ervan.

  • De definitie begint met het gegevenstype dat de kolom accepteert. In dit geval ArtistId heeft het gegevenstype int .
  • Deze kolom gebruikt ook IDENTITY(1,1) om aan te geven dat er voor elke rij een automatisch gegenereerd nummer wordt gegenereerd. De (1,1) deel geeft aan dat de nummering bij 1 begint en bij elke nieuwe rij met 1 wordt verhoogd. Zie SQL Server IDENTITY() Woning voor meer informatie.
  • De NOT NULL part specificeert dat deze kolom een ​​waarde moet bevatten (d.w.z. deze mag niet null zijn).
  • De PRIMARY KEY part specificeert dat deze kolom de primaire sleutel voor de tabel is. Een primaire sleutelkolom is de kolom die elke rij op unieke wijze identificeert. Het moet een unieke waarde bevatten en het mag niet null zijn.

We kunnen zien dat de volgende kolom nvarchar(255) . gebruikt datatype en de volgende gebruikt date .

Een relatie maken

Wanneer u twee of meer tabellen maakt, kunt u er ook een relatie tussen maken.

Dit helpt om de referentiële integriteit te behouden. Het stelt u in staat om gegevens in de ene tabel te hebben die verwijzen naar gegevens in een andere, terwijl u erop kunt vertrouwen dat uw database eventuele inconsistenties in de gegevens tussen de twee tabellen zal voorkomen.

U kunt een relatie maken wanneer u de tabel maakt, of u kunt teruggaan en deze later toevoegen. Zie Een relatie maken in SQL om te zien hoe u beide kunt doen.

Meer opties

De CREATE TABLE verklaring kan veel complexer zijn dan het bovenstaande voorbeeld zou impliceren. Hoe complex u het maakt, hangt af van uw vereisten.

U kunt bijvoorbeeld een gepartitioneerde tabel maken, versleutelingskolommen opgeven, berekende kolommen maken, sortering opgeven en nog veel meer.

Raadpleeg de documentatie van Microsoft voor de volledige syntaxisopties die beschikbaar zijn bij het maken van een tabel in SQL Server.


  1. Wacht-time-out voor vergrendeling overschreden; probeer de transactie opnieuw te starten, ook al gebruik ik geen transactie

  2. Verkrijg id van een insert in dezelfde instructie

  3. sp_executesql is traag met parameters

  4. Zoek het aantal kolommen in een tabel