Я довольно груб, когда дело доходит до PostgreSQL и имею некоторый опыт работы с SQL Server.Этот вопрос касается практики, потому что я прочитал много вещей.
Я хочу вставить запись (пользователя), а затем взять это userID
и вставить еще пару записей в еще пару таблиц.
Традиционно я бы использовал что-то вроде хранимой процедуры или триггера для обработки этого.Я видел, что функции существуют в postgreSQL (нет хранимой процедуры?), Но я также видел, что они не транзакционные.
Я надеюсь, что смогу найти решение, которое является транзакционным, либо с триггером, либо с сохранениемпроцедура.
Внешние ключи в настоящее время не добавляются (будут существовать в какой-то момент, но не на данном этапе разработки):
Пример (передача $ name, $ password, $ address, $ $идентификатор_группы, $ интересовJson):
insert into user (name, pwd, address)
values ($name, $password, $address)
insert into user_group (user_id, group_id)
values (NEW_USER_ID_ABOVE, $group_id)
insert into user_interests (user_id, interests)
value (NEW_USER_ID_ABOVE, $interestsJson)