PostgreSQL — создание обновляемых представлений с использованием пункта WITH CHECK OPTION
PostgreSQL — это самая совершенная в мире база данных общего назначения с открытым исходным кодом. pgAdmin — самый популярный инструмент управления или платформа разработки для PostgreSQL. Это также платформа для разработки с открытым исходным кодом. Его можно использовать в любых операционных системах и запускать либо как настольное приложение, либо как веб-приложение в вашем браузере.
В этой статье мы обсудим:
- Настройте pgAdmin для вашей ОС.
- Создание обновляемых представлений с использованием предложения WITH CHECK OPTION.
pgAdmin можно загрузить с здесь . Последняя версия — pgAdmin 4 v5.2.
1. Загрузите установщик PostgreSQL с здесь . Выберите правильную версию и биты Windows вашего ПК.
2. После загрузки откроется мастер установки. Укажите каталог. Вы можете оставить все по умолчанию и нажать «Далее».
3. Теперь самое главное. Он попросит ввести пароль . Пароль очень важен, запомните его.
4. Теперь выберите номер порта. По умолчанию это «5432».
5. Нажмите «Далее» и установите программу установки. Нет необходимости добавлять Stack Builder, снимите флажок и нажмите «Готово».
6. Теперь установите pgAdmin по приведенной выше ссылке.
7. После завершения установки перезагрузите компьютер, чтобы убедиться, что pgAdmin работает.
8. Откройте pgAdmin из начального окна, после чего он запросит пароль. Вы должны использовать тот же пароль, который обсуждался на шаге 3.
9. Теперь щелкните Сервер, и вы сможете легко создать базу данных и написать запрос в Инструменте запросов.
Для создания базы данных и таблиц, а также для получения дополнительной информации об инструменте запросов в pgAdmin посетите CREATE и Рекурсивный запрос .
Образец ввода:Рассмотрим ниже Модель ER ниже, чтобы создать таблицы сведений о сотрудниках и сведениях об отделах для компании.
ER-диаграмма примеров таблиц
Создание обновляемых представлений с использованием предложения WITH CHECK OPTION:Представление обычно создается, когда мы хотим показать подмножество таблицы путем выбора определенных строк или столбцов. Он используется для ограничения доступа к исходной таблице, и пользователи могут видеть подчасть базовой таблицы 9.0004 . Дополнительные сведения о представлениях и их типах см. в статье PostgreSQL — Создание обновляемых представлений .
Let’s Summarizable об создании обновляемых представлений, как обсуждалось в Postgresql — Создайте обновляемые просмотры и проблемы, с которыми сталкиваются:
Входные данные:
1. Департамент
Таблица
2. Подробности работы 9000
Таблица сотрудников
Теперь давайте создадим обновляемое представление для таблицы сотрудников. Сделаем просмотр для всех сотрудников, которые работают в «отделе кадров» компании.
СОЗДАТЬ ПРОСМОТР employee_hr AS SELECT employee_id,employee_name,department_id ОТ Сотрудника WHERE Department_id=100
HR VIEW
Поскольку это обновляемое представление, мы можем вставить значения, и они отразятся в таблице Employee. Если «Department_ID» вновь вставленного значения равен 100 , то он будет добавлен как в таблицу сотрудников, так и в таблицу представления Employees_HR, иначе он не будет добавлен в это представление HR, поскольку условие WHERE становится FALSE.
Вставка новых данных в обновляемое представление
Новая таблица сотрудников
Теперь мы также можем удалить представление и сделать его невидимым, выполнив запрос UPDATE, как показано ниже. Предположим, мы удалим Неху из «представления отдела кадров» и установим какой-нибудь другой отдел, а также изменим ее имя на «Нехаа».
ОБНОВЛЕНИЕ сотрудников_час УСТАНОВЛЕН employee_name = 'Нехаа', id_отдела=104 КУДА идентификатор_сотрудника=1004 /* Удаление представления Нехи из отдела кадров путем обновления ее имени и отдела */
Neha теперь невидим в этом представлении
Nehaa обновляется в таблице сотрудников
Это проблема в обновляемом представлении без опции WITH CHECK. Пользователь, имеющий доступ к «просмотру HR», может легко изменить данные, и изменение в них отразится обратно в родительской таблице. Это плохой знак для любой организации, потому что они предоставляют пользователям доступ для изменения данных. Люди могут указать неправильные данные, а также изменить назначение сотрудника. Следовательно, данные больше не в безопасности в базе данных.
Итак, чтобы преодолеть это, мы можем использовать предложение WITH CHECK OPTION.
СОЗДАТЬ ПРОСМОТР employee_Sales AS ВЫБЕРИТЕ * ОТ сотрудника WHERE Department_id=101 WITH CHECK OPTION
Представление отдела продаж
Теперь давайте попробуем вставить сведения о сотруднике, который не из отдела продаж, а также попробуем ОБНОВИТЬ запись из этого представления.
ВСТАВИТЬ
ОБНОВЛЕНИЕ
Следовательно, согласованность поддерживается, и опция WITH CHECK запрещает пользователю не вводить ВСТАВИТЬ или ОБНОВИТЬ любые данные, которые не имеют отношения к созданному представлению.
Postgres онлайн — Тестовые SQL-запросы
Эта игровая площадка позволяет вам тестировать Postgres онлайн (PostgreSQL 11.10).
Вы можете напрямую использовать приведенный выше редактор для выполнения запросов непосредственно к базе данных Postgresql. Вы можете запускать следующие операторы с синтаксисом, специфичным для postgresql: создать таблицу, создать представление, создать индекс, объяснить, очистить, выбрать, обновить и удалить.
Невозможно использовать транзакции (Соединение не является постоянным ).
Вы можете использовать расширение postgis, для этого нажмите «База данных > Активировать PostGis».
Этот инструмент не позволяет хранить постоянные данные (всего несколько минут), это всего лишь песочница PostgreSQL . Это может помочь легко выполнить небольшие тесты, вы можете тестировать запросы Postgres онлайн за несколько секунд без установки. Ваши данные будут проходить через сеть, будьте осторожны, чтобы не использовать конфиденциальные данные.
Автозаполнение : Ctrl-пробел для автозаполнения.
Ограничения использования:
/!\ Созданная база данных удаляется примерно через 30 минут бездействия.
/!\ База данных ограничена 20 МБ, если вы превысите этот лимит, ваша база данных будет удалена.
Как тестировать запросы Postgres онлайн?
Введите свой SQL-запрос в редакторе, наконец, нажмите «Выполнить», чтобы выполнить его. Результат запроса будет отображаться под редактором.
Вы также можете выполнить только один запрос, введенный в редакторе. Для этого просто выберите его, прежде чем нажать «Выполнить».
Если вы хотите экспортировать результаты в формате csv , нажмите «Экспорт».
Вы можете поделиться фрагментом SQL . Нажмите «Поделиться фрагментом», чтобы поделиться своим кодом SQL.
Ваша база данных не будет скопирована, это сохранит только код редактора! Это полезно для совместного использования кода SQL.
sql-запросы , введенные в редакторе, сохраняются, чтобы вы могли найти их при следующих посещениях.
Внимание, это локальная резервная копия в вашем браузере , ее можно удалить в любой момент.
Как сделать дамп базы данных Postgres?
Вы можете сделать дамп базы данных Postgres в файл SQL . Нажмите «База данных > Дамп БД в SQL», чтобы экспортировать БД Postgres.
О PostgreSQL
PostgreSQL — это бесплатная объектно-реляционная система баз данных с открытым исходным кодом. PostgreSQL имеет прочную репутацию благодаря надежности и производительности благодаря более чем 30-летнему развитию сообщества. Он доступен для macOS Server, Linux, FreeBSD, OpenBSD и Windows.
PostgreSQL can be used as the primary data store or data warehouse for many websites, mobile applications …
Export results to CSV
Separator | SemicolonCommaTab |
NULL string | |
Header | |
Сохранить и поделиться фрагментом SQL
Сохраните код SQL, чтобы поделиться им.