Į lentelę įtraukia įrašą arba kelis įrašus. Tai vadinama papildymo užklausa.
Sintaksė
Kelių įrašų papildymo užklausa:
INSERT INTO paskirtis [(laukas1[, laukas2[, ...]])] [IN išorinė_duomenų_bazė]
SELECT [šaltinis.]laukas1[, laukas2[, ...] FROM lentelės_reiškinysVieno įrašo papildymo užklausa:
INSERT INTO paskirtis [(laukas1[, laukas2[, ...]])]
VALUES (reikšmė1[, reikšmė2[, ...])Sakinys INSERT INTO sudarytas iš šių dalių:
Dalis |
Aprašas |
Paskirtis |
Lentelės arba užklausos, norimos papildyti įrašais, pavadinimas. |
laukas1, laukas2 |
Laukų, papildytinų duomenimis, pavadinimas (jei naudojamas argumentas paskirtis) arba laukų, iš kurių gautini duomenys, pavadinimai (jei naudojamas argumentas šaltinis). |
išorinė_duomenų_bazė |
Kelias į išorinę duomenų bazę. Jei reikia kelio aprašo. žr. sąlygą IN. |
šaltinis |
Lentelės arba užklausos, iš kurios kopijuotini įrašai, pavadinimas. |
lentelės_reiškinys |
Lentelės arba lentelių, iš kurių įterpiami įrašai, pavadinimas (-ai). Argumentas gali būti vienos lentelės pavadinimas arba junginys, gautas iš INNER JOIN, LEFT JOIN arba RIGHT JOIN operacijos arba įrašytos užklausos. |
reikšmė1, reikšmė2 |
Reikšmės, įterptinos į naujo įrašo konkrečius laukus. Kiekviena reikšmė įterpiama į lauką, kuris atitinka reikšmės poziciją sąraše: reikšmė1 įterpiama į naujo įrašo laukas1, reikšmė2 į laukas2 ir t. t. Turite atskirti reikšmes kableliais ir rašyti teksto laukus kabutėse (' '). |
Pastabos
Galite naudoti sakinį INSERT INTO, norėdami į lentelę įtraukti vieną įrašą naudodami vieno įrašo papildymo užklausą, kaip parodyta aukščiau. Tokiu atveju jūsų kodas nurodo kiekvieno įrašo lauko pavadinimą ir reikšmę. Turite nurodyti kiekvieną iš įrašo laukų, kuriems priskirtina reikšmė ir to lauko reikšmę. Jei nenurodote kiekvieno lauko, trūkstamuose stulpeliuose įterpiama numatytoji reikšmė arba Null. Įrašai įtraukiami į lentelės pabaigą.
Taip pat galite naudoti INSERT INTO, kad pridėtumėte įrašų rinkinį iš kitos lentelės arba užklausos naudodami SELECT ... FROM sąlygą, kaip parodyta aukščiau kelių įrašų papildymo užklausos sintaksėje. Tokiu atveju CLAUSE sąlyga nurodo laukus, pridėtinus prie nurodytos lentelės paskirtis.
Lentelė šaltinis arba paskirtis gali nurodyti lentelę arba užklausą. Jei nurodoma užklausa, „Microsoft Access“ duomenų bazės modulis prideda įrašus prie visų užklausos nurodytų lentelių.
INSERT INTO sąlyga nėra būtina, tačiau jei naudojama, ji turi būti prieš SELECT sakinį.
Jei paskirties lentelėje yra pirminis raktas, prie pirminio rakto lauko arba laukų būtinai pridėkite unikalias, ne Null reikšmes. Jei to nepadarysite, „Microsoft Access“ duomenų bazės modulis nepridės įrašų.
Jei pridedate įrašus į lentelę, kurioje yra automatinio numeravimo laukas, ir norite iš naujo sunumeruoti pridėtus įrašus, į užklausą neįtraukite automatinio numeravimo lauko. Tačiau į užklausą įtraukite automatinio numeravimo lauką, jei norite išlaikyti pradines lauko reikšmes.
Naudokite IN sąlygą, norėdami papildyti įrašais lentelę, esančią kitoje duomenų bazėje.
Norėdami sukurti naują lentelę, vietoj to naudokite SELECT... INTO sąlygą, kad būtų sukurta lentelės kūrimo užklausa.
Norėdami sužinoti, kurie įrašai bus pridėti prieš vykdydami papildymo užklausą, pirmiausia vykdykite išrinkimo užklausą, kuri naudoja tuos pačius atrankos kriterijus, ir peržiūrėkite jos rezultatus.
Papildymo užklausa kopijuoja įrašus iš vienos arba daugiau lentelių į kitą. Papildymo užklausa neturi įtakos lentelėms, kuriose yra pridedamų įrašų.
Užuot pridėjus esamus įrašus iš kitos lentelės, galite nurodyti kiekvieno lauko reikšmę viename naujame įraše naudodami sąlygą VALUES. Jei neįtrauksite laukų sąrašo, sąlygoje VALUES turi būti kiekvieno lentelės lauko reikšmė; kitu atveju insert operacija nepavyks. Kiekvienam papildomam įrašui, kurį norite sukurti, naudokite papildomą sakinį INSERT INTO su sąlyga VALUES.