You need to insert subqueries in parentheses. The opening paren for values
doesn't count. It is the start of a list, not a subquery. You can include subqueries in the VALUES
clause when they return one row and one column.
Instead, though, you can use this syntax:
insert into regions (region_id, region_name)
select max(region_id) + 1, 'Great Britain'
from regions;
Better yet would be to assign a sequence to the region_id
(identity or auto-increment column in other databases) so it is assigned automatically. Then you would just do:
insert into regions (region_name)
select 'Great Britain'
from dual;