The Oracle INSERT statement adds one or more records to any single table.

An INSERT statement does not return any rows.

The general format is:

INSERT INTO tablename (column1 [, column2, column3 ... ]) VALUES (expression1 [, expression2, expression3 ... ])


INSERT INTO tablename (column1 [, column2, column3 ... ])
SELECT expression1, expression2, ...
FROM source_table
WHERE conditions;

You must provide a value for every NOT NULL column.
You can omit a column from INSERT statement if the column allows NULL values.

Example 1:

INSERT INTO country (countrycode, countryname) VALUES (34,'Spain');

Example 2:

INSERT INTO country VALUES (34,'Spain');

Example 3:

INSERT INTO country_bak (countrycode, countryname)
SELECT countrycode, countryname
FROM country
WHERE countrycode in (12,20,34);