SQLite

Kaip naudotis „SQLite Autoincrement“

Kaip naudotis „SQLite Autoincrement“
SQLite palaiko AUTOINCREMENT raktinį žodį, kuris automatiškai padidina nurodyto lauko vertę duomenų bazės lentelėje. Pagal numatytuosius nustatymus, kai kuriate duomenų bazės lentelę, gausite 64 bitų pasirašytą sveikąjį skaičių, nurodantį eilutę IP arba ROWID. Ši parinktis yra numatyta pagal numatytuosius nustatymus, nebent tai būtų aiškiai nurodyta naudojant raktinius žodžius BE ROWID.

Stulpelis ROWID automatiškai didinamas, kai prie lentelės pridedate duomenis. Pavyzdžiui, apsvarstykite toliau pateiktą užklausą, kad sukurtumėte ir pridėtumėte duomenis.

SUKURTI LENTEL "„ demonstracinis “(
„vardas“ TEKSTAS,
„vaidmuo“ TEKSTAS
);

Tada pridėkite duomenis prie anksčiau sukurtos lentelės naudodami toliau pateiktą užklausą:

ĮTERPTI Į „pagrindinį“.„demo“ („vardas“, „vaidmuo“) VERTYBĖS („Mari Clovis“, „Žiniatinklio kūrėjas“);
ĮTERPTI Į „pagrindinį“.„demo“ („vardas“, „vaidmuo“) VERTYBĖS („Terhi Antonije“, „Techninės įrangos inžinierius“);

Dabar:

Jei atliksime SELECT užklausą lentelėje, gausime lentelę, kaip parodyta žemiau.

SELECT oid, vardas, vaidmuo IŠ demonstracinės versijos;

Kaip matyti iš aukščiau pateiktos išvesties, SQLite automatiškai sukuria lauką (ROWID), kuris automatiškai didinamas, kai duomenys įtraukiami į lentelę.

Tačiau kurdami lentelę naudodami AUTOINCREMENT raktinį žodį, galite aiškiai nurodyti eilutės ID. Aptarkime, kaip tai padaryti, šioje pamokoje.

Kaip naudotis AUTOINCREMENT

Norint pradėti naudoti raktinį žodį AUTOINCREMENT, nurodytame lauke turėtų būti priimamos tik INTEGER reikšmės. Bendroji raktinio žodžio AUTOINCREMENT sintaksė yra tokia:

SUKURTI LENTEL "„ demo2 “(
„Field1“ INTEGER,
PAGRINDINIS RAKTAS (AUTOINCREMENT „1 laukas“)
);

Pavyzdžiui, atsižvelgti į toliau pateiktą lentelę:

SUKURTI LENTEL "„ vartotojai “(
„Ne“ INTEGER,
„Vardas“ TEKSTAS,
„Amžius“ INTEGER,
„Kalba“ TEKSTAS,
PAGRINDINIS RAKTAS („NE“ AUTOINCREMENT)
);

Pridėkime duomenis į lentelę naudodami toliau pateiktą užklausą:

ĮTERPTI Į „pagrindinį“.„vartotojai“ („Ne“, „Vardas“, „Amžius“, „Kalba“) VERTYBĖS ('1', 'Danuše Bob', '23', 'Python, Java');
ĮTERPTI Į „pagrindinį“.„vartotojai“ („Ne“, „Vardas“, „Amžius“, „Kalba“) VERTYBĖS („2“, „Glaucia Martha“, „30“, „JavaScript“, „Ruby on Rails“);
ĮTERPTI Į „pagrindinį“.„vartotojai“ („Ne“, „Vardas“, „Amžius“, „Kalba“) VERTYBĖS („3“, „Tindra Alona“, „25“, „C ++, Bash“);
ĮTERPTI Į „pagrindinį“.„vartotojai“ („Ne“, „Vardas“, „Amžius“, „Kalba“) VERTYBĖS ('4', 'Yakau Kelley', '33', 'Java, Mathematica, Python');

Atlikę aukščiau pateiktą užklausą, gausite lentelę su toliau nurodytais duomenimis:

Atkreipkite dėmesį, kad lauko Ne vertės reikšmės automatiškai didinamos. Taip pat galite nurodyti norimų pridėti duomenų vietą arba vietą. Pvz., Norėdami pridėti duomenų Nr. (Id) 1000, nurodykite vertę, kaip parodyta toliau pateiktoje užklausoje:

ĮTERPTI Į „pagrindinį“.„vartotojai“ („Ne“, „Vardas“, „Amžius“, „Kalba“) VERTYBĖS ('1000', 'Chestirad Orval', '22', 'Java, Matlab, C #);

Dabar, jei teiksite užklausą dėl duomenų pirmiau pateiktoje lentelėje, pamatysite lentelę, kaip parodyta žemiau:

PASIRINKITE * IŠ vartotojų;

Kaip matote iš aukščiau pateiktos išvesties, mūsų įterpti duomenys yra 1000 pozicijoje, kaip nurodyta. Didžiausia vertė gali būti 9223372036854775807. Jei bandysite pridėti daugiau duomenų, kol jie pasieks didžiausią vertę, „SQLite“ ieškos nenaudojamos vertės ir įterps duomenis toje vietoje.

PASTABA: SQLite rekomenduoja naudoti AUTOINCREMENT, nes galite sužinoti daugiau iš toliau pateiktų išteklių

https: // sqlite.org / autoinc.HTML

Išvada

Šioje pamokoje aptarta, kaip įvairiuose laukuose naudoti SQL automatinio priėmimo raktinį žodį. Prieš nuspręsdami, kada naudoti AUTOINCREMENT raktinį žodį, būtinai perskaitykite jo dokumentaciją, funkcijas ir apribojimus.

„OpenTTD“ pamoka
„OpenTTD“ yra vienas iš populiariausių verslo modeliavimo žaidimų. Šiame žaidime turite sukurti nuostabų transporto verslą. Tačiau pradėsite nuo mažda...
„SuperTuxKart“, skirta „Linux“
„SuperTuxKart“ yra puikus pavadinimas, sukurtas nemokamai suteikti „Mario Kart“ patirtį jūsų „Linux“ sistemoje. Tai gana sudėtinga ir smagu žaisti, yr...
„Battle for Wesnoth“ pamoka
„Battle for Wesnoth“ yra vienas populiariausių atvirojo kodo strateginių žaidimų, kurį šiuo metu galite žaisti. Šis žaidimas ne tik buvo kuriamas laba...