SQLite

Ako používať automatický prírastok SQLite

Ako používať automatický prírastok SQLite
SQLite podporuje kľúčové slovo AUTOINCREMENT, ktoré automaticky zvyšuje hodnotu zadaného poľa v databázovej tabuľke. V predvolenom nastavení získate pri vytváraní databázovej tabuľky 64-bitové celé číslo so znamienkom, ktoré predstavuje riadok IP alebo ROWID. Táto možnosť je k dispozícii predvolene, pokiaľ nie je výslovne uvedená pomocou kľúčových slov BEZ ROWID.

Po pridaní údajov do tabuľky sa stĺpec ROWID automaticky zvýši. Zvážte napríklad dotaz nižšie na vytvorenie a pridanie údajov.

VYTVORIŤ TABUĽKU „ukážka“ (
"meno" TEXT,
„rola“ TEXT
);

Ďalej pridajte údaje do vytvorenej tabuľky vyššie pomocou nižšie uvedeného dotazu:

VLOŽTE DO „hlavného“."demo" ("meno", "rola") VALUES ('Mari Clovis', 'Web Developer');
VLOŽTE DO „hlavného“."demo" ("meno", "rola") HODNOTY ('Terhi Antonije', 'Hardware Engineer');

Teraz:

Ak vykonáme v tabuľke príkaz SELECT, dostaneme tabuľku, ako je uvedené nižšie.

VYBERTE oid, meno, rola Z ukážky;

Ako je zrejmé z výstupu vyššie, SQLite automaticky vytvorí pole (ROWID), ktoré sa automaticky zvyšuje pri pridávaní údajov do tabuľky.

Môžete však výslovne určiť id riadku pri vytváraní tabuľky pomocou kľúčového slova AUTOINCREMENT. V tomto návode si poďme predstaviť, ako to urobiť.

Ako používať AUTOINCREMENT

Ak chcete začať používať kľúčové slovo AUTOINCREMENT, zadané pole by malo akceptovať iba hodnoty INTEGER. Všeobecná syntax pre kľúčové slovo AUTOINCREMENT je nasledovná:

VYTVORIŤ TABUĽKU „demo2“ (
„Pole1“ INTEGER,
PRIMÁRNY KLÍČ (AUTOMATICKÝ PRÍSPEVOK „„ Pole1 “)
);

Zvážte napríklad nasledujúcu tabuľku:

VYTVORIŤ TABUĽKU „používatelia“ (
„Nie“ INTEGER,
„Meno“ TEXT,
„Vek“ INTEGER,
„Jazyk“ TEXT,
PRIMÁRNY KLÍČ („Nie“ AUTOMATICKÝ PRÍSPEVOK)
);

Pridajte údaje do tabuľky pomocou nižšie uvedeného dotazu:

VLOŽTE DO „hlavného“."users" ("No", "Name", "Age", "Language") VALUES ('1', 'Danuše Bob', '23', 'Python, Java');
VLOŽTE DO „hlavného“.„users“ („Nie“, „Meno“, „Vek“, „Jazyk“) HODNOTY („2“, „Glaucia Martha“, „30“, „JavaScript, Ruby on Rails“);
VLOŽTE DO „hlavného“."users" ("Nie", "Meno", "Vek", "Jazyk") VALUES ('3', 'Tindra Alona', '25', 'C ++, Bash');
VLOŽTE DO „hlavného“."users" ("Nie", "Meno", "Vek", "Jazyk") HODNOTY ('4', 'Yakau Kelley', '33', 'Java, Mathematica, Python');

Po vykonaní vyššie uvedeného dotazu získate tabuľku s údajmi uvedenými nižšie:

Všimnite si, že hodnoty poľa Nie sa zvyšujú automaticky. Môžete tiež určiť polohu alebo umiestnenie údajov, ktoré chcete pridať. Ak chcete napríklad pridať údaje na číslo (id) 1000, zadajte hodnotu uvedenú v nasledujúcom dotaze:

VLOŽTE DO „hlavného“."users" ("Nie", "Meno", "Vek", "Jazyk") HODNOTY ('1000', 'Chestirad Orval', '22', 'Java, Matlab, C #);

Ak teraz dopytujete údaje vo vyššie uvedenej tabuľke, zobrazí sa tabuľka uvedená nižšie:

VYBERTE * OD POUŽÍVATEĽOV;

Ako vidíte z výstupu vyššie, údaje, ktoré sme vložili, sa nachádzajú na pozícii 1000, ako je uvedené. Maximálna hodnota môže byť na hodnote 9223372036854775807. Ak sa pokúsite pridať viac údajov, kým nedosiahla maximálnu hodnotu, vyhľadá SQLite nepoužitú hodnotu a vloží údaje na dané miesto.

POZNÁMKA: Spoločnosť SQLite odporúča používať AUTOINCREMENT, ako sa dozviete viac v zdroji uvedenom nižšie

https: // sqlite.org / autoinc.html

Záver

V tomto výučbe sa dozviete, ako používať kľúčové slovo autoincrement SQL v rôznych poliach. Pred rozhodnutím, kedy použiť kľúčové slovo AUTOINCREMENT, si prečítajte jeho dokumentáciu, funkcie a obmedzenia.

Hry Výukový program OpenTTD
Výukový program OpenTTD
OpenTTD je jednou z najpopulárnejších obchodných simulačných hier. V tejto hre musíte vytvoriť úžasné dopravné podnikanie. Začnete však na začiatku ok...
Hry SuperTuxKart pre Linux
SuperTuxKart pre Linux
SuperTuxKart je vynikajúci titul navrhnutý tak, aby vám priniesol zážitok z hry Mario Kart zadarmo na vašom systéme Linux. Je to dosť náročné a zábavn...
Hry Výukový program Battle for Wesnoth
Výukový program Battle for Wesnoth
Battle for Wesnoth je jednou z najpopulárnejších open source strategických hier, ktoré si v súčasnosti môžete zahrať. Táto hra bola nielen vyvinutá ve...