Я новичок в PostgreSQL (v8.4) и пытаюсь написать несколько простых функций.Мой первый эксперимент, однако, уже заканчивается неудачей.Я получаю сообщение об ошибке:
ERROR: syntax error at or near ";"
LINE 7: begin;
... и не вижу проблемы.Это выглядит правильно, согласно документации, которую я просматривал.
create or replace function create_user(
user_name varchar(250),
email_address varchar(250),
approved boolean,
email_is_unique boolean
) returns boolean as $$
begin;
if email_is_unique
&& exists(select null from users as u where u.email = email_address) then
raise exception 'The email address specified is already in use, and email addresses are configured to be unique.';
end if;
insert into users
(
user_name,
email
)
values
(
user_name,
email_address
);
return true;
end;
$$ language plpgsql;