Metoden för att infoga en post i en tabell med en identitetskolumn beror på databassystemet du använder. Kärnprincipen är att du inte är Ange ett värde för identitetskolumnen; Databasen genererar den automatiskt.
Här är exempel för några vanliga databassystem:
SQL Server:
`` `SQL
Infoga i YourTable (Column1, Column2, Column3)
Värden ('värde1', 'värde2', 'värde3');
`` `
I det här exemplet är `YourTable 'tabellnamnet, och' Column1 ',' Column2 'och' Column3 'är kolumner * annat än * Kolumnen Identitet. Databasen tilldelar automatiskt ett unikt värde till identitetskolumnen.
mysql:
`` `SQL
Infoga i YourTable (Column1, Column2, Column3)
Värden ('värde1', 'värde2', 'värde3');
`` `
I likhet med SQL Server utelämnar du identitetskolumnen från uttalandet "Insert". MySQL hanterar automatiskt automatisk inkrement.
PostgreSQL:
`` `SQL
Infoga i YourTable (Column1, Column2, Column3)
Värden ('värde1', 'värde2', 'värde3');
`` `
Återigen gäller samma princip. PostgreSQL:s datatyp "Serial" eller "BigSerial" hanterar automatiskt genereringen av unika värden.
oracle:
`` `SQL
Infoga i YourTable (Column1, Column2, Column3)
Värden ('värde1', 'värde2', 'värde3');
`` `
Oracle's sekvenser och identitetskolumner fungerar på liknande sätt; Du anger inte ett värde för dem under införande.
Viktiga överväganden:
* Identitetskolumnnamn: Se till att du förstår namnet på din identitetskolumn. Gör det inte * inkludera det i uttalandet "Insert". Att försöka infoga ett värde i identitetskolumnen kommer i allmänhet att resultera i ett fel, beroende på databasens strikthet.
* Datatyper: Se till att värdena du anger för de andra kolumnerna matchar deras respektive datatyper.
* nollvärden: Om en kolumn tillåter "noll" -värden kan du utelämna det från uttalandet "Infoga", och databasen kommer att infoga ett "null" -värde.
* Felhantering: Inkludera alltid lämplig felhantering i din applikationskod för att hantera potentiella problem under införingsprocessen.
Sammanfattningsvis är nyckeln att endast ange värden för kolumnerna som inte är identitet i ditt "Insert" -uttalande. Låt databasen hantera identitetskolumnen automatiskt. Den specifika syntaxen kan variera något baserat på databassystemet du använder, men den underliggande principen förblir konsekvent.