Пример-8. Запись информации в поля таблиц базы данных
В схеме tmp базы данных существует таблица БД tmp.fio_list (см. рисунок ниже), созданная для иллюстративных целей.
Содержание этой таблицы приведено на рисунке ниже.
Приведенный ниже скрипт иллюстрирует процесс считывания данных из строки этой таблицы и записи данных в ту же строку этой таблицы.
-- Создать временную таблицу scr_pg_vars_tt999 для хранения значений переменных скрипта select * from script_pg_vars_table_tmp_create(); -- Изменить значения полей в таблице базы данных select * from public.script_pg_execute ( ' ФИО:=ТаблицаПолеЗначениеКакСтрокаПолучить("tmp.fio_list", "fio", "code=106"); ФИО_изм := "Некто Новый..."; Результат_Записи_ФИО:=ТаблицаПолеЗначениеКакСтрокаЗаписать("tmp.fio_list", "fio", "code=106", ФИО_изм); Оклад := ТаблицаПолеЗначениеКакЧислоПолучить("tmp.fio_list", "oklad", "code=106"); Оклад_Расчетный := (Оклад + 100) * 1.8; Результат_Записи_Оклада:=ТаблицаПолеЗначениеКакЧислоЗаписать("tmp.fio_list", "oklad", "code=106", Оклад_Расчетный); Активность:=ТаблицаПолеЗначениеКакЛогическоеПолучить("tmp.fio_list", "yes_active", "code=106"); Результат_Записи_Активности:=ТаблицаПолеЗначениеКакСтрокаЗаписать("tmp.fio_list", "yes_active", "code=106", "True"); Результат_Записи_Даты1:=ТаблицаПолеЗначениеКакСтрокаЗаписать("tmp.fio_list", "d1", "code=106", "2022-07-01"); Результат_Записи_Даты2:=ТаблицаПолеЗначениеКакСтрокаЗаписать("tmp.fio_list", "d2", "code=106", "2022-07-31"); Результат_Записи_Прим:=ТаблицаПолеЗначениеКакСтрокаЗаписать("tmp.fio_list", "note", "code=106", "Примечание какое-то"); ' ); -- Посмотреть значения переменных после выполнения скрипта select * from scr_pg_vars_tt999 order by var_name; -- Удалить временную таблицу scr_pg_vars_tt999 для хранения значений переменных скрипта -- select * from script_pg_vars_table_tmp_drop();
На рисунках ниже приведен результат.
Дата: 01.07.2022