Auto Increment

Автоматичното нарастване позволява автоматично генериране на уникален номер, когато нов запис се вмъква в таблица. Често това е основното поле, на което бихме желали да са създадени автоматично всеки път, когато се вмъкне нов запис.

Синтаксис за MySQL

Следващата SQL заявка определя колоната „ID“ да бъде автоматично поле на primary key в таблицата „Persons“:

MySQL използва ключовата дума AUTO_INCREMENT, за да извърши функция за автоматично увеличаване. По подразбиране началната стойност за AUTO_INCREMENT е 1 и тя ще нараства с 1 за всеки нов запис. За да стартирате последователността AUTO_INCREMENT с друга стойност, използвайте следния SQL израз:

За да вмъкнете нов запис в таблицата „Persons“, няма да трябва да посочваме стойност за колоната „ID“ (автоматично се добавя уникална стойност):

SQL заявката по-горе ще вмъкне нов запис в таблицата „Persons“. Колоната „ID“ ще получи уникална стойност. Колоната „FirstName“ ще бъде със стойност „Lars“ и колоната „LastName“ ще бъде със стойност „Monsen“.

Синтаксис за SQL Server

Следващото SQL изявление определя колоната „ID“ да бъде автоматично поле на първичния ключ в таблицата „Persons“:

MS SQL Server използва ключовата дума IDENTITY, за да извърши функция за автоматично увеличаване. В горния пример началната стойност за IDENTITY е 1 и тя ще нараства с 1 за всеки нов запис. Съвет: За да укажете, че колоната „ID“ трябва да започва от стойност 10 и увеличение с 5, променете я на IDENTITY (10,5). За да вмъкнете нов запис в таблицата „Persons“, няма да трябва да посочваме стойност за колоната „ID“ (автоматично се добавя уникална стойност):

SQL изявлението по-горе ще вмъкне нов запис в таблицата „Persons“. Колоната „ID“ ще получи уникална стойност. Колоната „FirstName“ ще бъде със стойност „Lars“ и колоната „LastName“ ще бъде със стойност „Monsen“.

Синтаксис за Access

Следващото SQL изречение определя колоната „ID“ да бъде автоматично поле на колоната с PRIMARY KEY в таблицата „Persons“:

MS Access използва ключовата дума AUTOINCREMENT, за да извърши функция за автоматично увеличаване. По подразбиране началната стойност за AUTOINCREMENT е 1, а за всеки нов запис се увеличава с 1. Съвет: За да укажете, че колоната „ID“ трябва да започне от стойността 10 и нараства с 5, променете автоматичния елемент на AUTOINCREMENT (10,5). За да вмъкнете нов запис в таблицата „Persons“, няма да трябва да посочваме стойност за колоната „ID“ (автоматично се добавя уникална стойност):

SQL изявлението по-горе ще вмъкне нов запис в таблицата „Persons“. В колоната „ID“ ще бъде присвоена уникална стойност. Колоната „FirstName“ ще бъде настроена на „Lars“ и колоната „LastName“ ще бъде зададена на „Monsen“.

Синтаксис за Oracle

В Oracle кодът е малко по-труден. Ще трябва да създадете поле за автоматично нарастване с обекта за последователност (този обект генерира последователност от числа). Използвайте следния синтаксис CREATE SEQUENCE:

Кодът по-горе създава последователен обект, наречен seq_person, който започва с 1 и ще нараства с 1 за всеки нов ред запис. Той също така ще кешира до 10 стойности за производителност. Опцията за кеш определя колко стойности на последователността ще се съхраняват в паметта за по-бърз достъп. За да вмъкнете нов запис в таблицата „Persons“, ще трябва да използваме функцията nextval (тази функция извлича следващата стойност от последователността seq_person):

SQL изявлението по-горе ще вмъкне нов запис в таблицата „Persons“. Колоната „ID“ ще бъде присвоена на следващото число от последователността seq_person. Колоната „FirstName“ ще бъде настроена на „Lars“ и колоната „LastName“ ще бъде зададена на „Monsen“.