Команда дописує записи в кінець вказаної таблиці. VALUES вказує значення стовпчиків нового запису. Якщо не потрібно заповнювати всі поля нового запису, то у фразі INSERT після імені таблиці вказується список полів, які заповнюються значеннями, заданими у VALUES. Якщо імена полів опущені, то вказані вирази будуть записуватися послідовно в поля БД відповідно до її структури.
Наведемо приклади:
INSERT INTO customer (nom_pokup, name1, name2, name3, city)
Фраза DEFAULT вказує на те, що добавлений запис буде містити значення за змовчанням, якщо воно визначене.
Наприклад,
INSERT INTO body DEFAULT VALUES
Фраза DEFAULT зустрічається в команді INSERT INTO ще й в списку значень, коли при необхідності ним можна замінити значення, яке вводиться.
INSERT INTO body (name_body) VALUES (DEFAULT)
У FoxPro є ще одна форма використання цієї команди:
INSERT INTO < ім`я таблиці > FROM ARRAY <масив> | FROM MEMVAR
- у таблицю переносяться змінні з указаного масиву, або дані з MEMO-змінних.
Команду INSERT можна використовувати разом з підзапитом, для того, щоб вибрати значення з однієї таблиці і перенести їх в іншу. Можна доповнювати запити з тієї ж таблиці. Для цього потрібно замінити VALUES на підзапит.
Наприклад:
INSERT INTO Londonstaff
SELECT *
FROM Salespeople
WHERE cyti=‘London’
INSERT INTO Daytotals (date, total)
SELECT zdate, SUM(amt)
FROM zakaz
GROUP BY zdate
(Відмітимо, що імена стовпчиків в двох таблицях не співпадають. Але якщо date і total єдині стовпчики таблиці і йдуть в ній в указаному порядку, то імена в INTO можна опустити.)