PostgreSQL

Вставить строку, если значения еще не существуют в Postgresl

Вставить строку, если значения еще не существуют в Postgresl

Знание систем управления базами данных и управление ими познакомило нас с изменениями в базах данных. Что обычно включает в себя создание, вставку, обновление и удаление функций, применяемых к определенным таблицам. В текущей статье мы увидим, как данные обрабатываются методом вставки. Нам необходимо создать таблицу, в которую мы хотим вставить. Оператор Insert используется для добавления новых данных в строки таблиц. Оператор вставки PostgreSQL описывает некоторые правила успешного выполнения запроса. Во-первых, мы должны указать имя таблицы, а затем имена столбцов (атрибутов), в которые мы хотим вставить строки. Во-вторых, мы должны ввести значения через запятую после предложения VALUE. Наконец, каждое значение должно быть в том же порядке, что и последовательность списков атрибутов, предоставленная при создании конкретной таблицы.

Синтаксис

>> ВСТАВИТЬ В НАЗВАНИЕ ТАБЛИЦЫ (столбец1, столбец) ЗНАЧЕНИЯ ('значение1', 'значение2');

Здесь столбец - это атрибуты таблицы. Ключевое слово VALUE используется для ввода значений. «Значение» - это данные таблиц, которые необходимо ввести.

Вставка строковых функций в оболочку PostgreSQL (psql)

После успешной установки postgresql мы введем имя базы данных, номер порта и пароль. Psql будет инициирован. Затем мы будем выполнять запросы соответственно.

Пример 1: Использование INSERT для добавления новых записей в таблицы
Следуя синтаксису, мы создадим следующий запрос. Чтобы вставить строку в таблицу, мы создадим таблицу с именем «customer». Соответствующая таблица содержит 3 столбца. Следует указать тип данных определенных столбцов, чтобы ввести данные в этот столбец и избежать избыточности. Запрос на создание таблицы:

>> создать таблицу customer (id int, name varchar (40), country varchar (40));

После создания таблицы мы теперь будем вводить данные, вставляя строки вручную в отдельные запросы. Во-первых, мы упоминаем имя столбца, чтобы поддерживать точность данных в определенных столбцах относительно атрибутов. Затем будут введены значения. Значения кодируются одиночными запятыми, так как они должны быть вставлены без изменений.

>> вставить в значения клиента (id, имя, страна) ('1', 'Alia', 'Пакистан');

После каждой успешной вставки вывод будет «0 1», что означает, что за раз вставляется 1 строка. В запросе, как упоминалось ранее, мы вставили данные 4 раза. Для просмотра результатов воспользуемся следующим запросом:

>> выберите * от клиента;

Пример 2: Использование оператора INSERT для добавления нескольких строк в один запрос
Тот же подход используется при вставке данных, но без многократного введения операторов вставки. Введем данные сразу по определенному запросу; все значения одной строки разделены знаком «Используя следующий запрос, мы получим требуемый результат

Пример 3: ВСТАВИТЬ несколько строк в одну таблицу на основе чисел в другой таблице
Этот пример относится к вставке данных из одной таблицы в другую. Рассмотрим две таблицы, «а» и «б». Таблица «a» имеет 2 атрибута, i.е., имя и класс. Применяя запрос CREATE, мы представим таблицу. После создания таблицы данные будут введены с помощью запроса на вставку.

>> создать таблицу a (имя varchar (30), class varchar (40));
>> Вставить в значения ('amna', 1), ('bisma', '2'), ('javed', '3'), ('maha', '4');

Четыре значения вставлены в таблицу с использованием теории превышения.  Мы можем проверить, используя операторы select.

Точно так же мы создадим таблицу «b», имеющую атрибуты всех имен и предметов. Те же 2 запроса будут применены для вставки и извлечения записи из соответствующей таблицы.

>> создать таблицу b (allnames varchar (30), subject varchar (70));

Получить запись по теории выбора.

>> выберите * из b;

Чтобы вставить значения таблицы б в таблице мы будем использовать следующий запрос. Этот запрос будет работать таким образом, что все имена в таблице б будет вставлен в таблицу а с подсчетом чисел, которые показывают количество появлений определенного числа в соответствующем столбце таблицы б. «Б.allnames »представляет объектную функцию для определения таблицы. Счетчик (b.allnames) работает для подсчета общего количества случаев. Поскольку каждое имя встречается сразу, результирующий столбец будет иметь 1 номер.

>> Вставить в (имя, класс) выберите б.allnames, count (b.allnames) из группы b пользователем b.все имена;

Пример 4: ВСТАВИТЬ данные в строки, если они не существуют
Этот запрос используется для ввода строк, если его нет. Сначала предоставленный запрос проверяет, присутствует ли строка уже или нет. Если он уже существует, то данные не добавляются. И если данных нет в строке, новая вставка будет сохранена. Здесь tmp - временная переменная, используемая для хранения данных в течение некоторого времени.

>> вставить в b (все имена, тема) выбрать * из (выбрать «Kinza» в качестве всех имен, «исламиат» в качестве темы) в качестве tmp там, где не существует (выбрать все имена из b, где allnames = ограничение «sundus» 1);

Пример 5: Обновление PostgreSQL с использованием инструкции INSERT
У этой функции есть две разновидности:

Изначально сформируем таблицу с некоторыми выборочными данными.

>> СОЗДАТЬ ТАБЛИЦУ tbl2 (ID INT PRIMARY KEY, имя CHARACTER VARYING);

После создания таблицы мы вставим данные в tbl2 с помощью запроса:

>> ВСТАВИТЬ В tbl2 ЗНАЧЕНИЯ (1, 'uzma'), (2, 'abdul'), (3, 'Hamna'), (4, 'fatima'), (5, 'shiza'), (6, ' javeria ');

Если возникает конфликт, Обновите:

>> INSERT INTO tbl2 VALUES (8, 'Rida') ON CONFLICT (ID) DO UPDATE SET Name = Excluded.Имя;

Сначала мы введем данные, используя конфликтный запрос идентификатора 8 и имени Rida. Тот же запрос будет использоваться после того же идентификатора; имя будет изменено. Теперь вы заметите, как имена будут изменены с одним и тем же идентификатором в таблице.

>> INSERT INTO tbl2 VALUES (8, 'Mahi') ON CONFLICT (ID) DO UPDATE SET Name = Excluded.Имя;

Мы обнаружили конфликт с идентификатором «8», поэтому указанная строка обновлена.

Если возник конфликт, ничего не делайте

>> ВСТАВИТЬ В tbl2 ЗНАЧЕНИЯ (9, 'Hira') ПРИ КОНФЛИКТЕ (ID) НИЧЕГО НЕ ДЕЛАЙТЕ;

Используя этот запрос, вставляется новая строка. После этого мы будем использовать тот же запрос, чтобы увидеть возникший конфликт.

>> ВСТАВИТЬ В tbl2 ЗНАЧЕНИЯ (9, 'Hira') ПРИ КОНФЛИКТЕ (ID) НИЧЕГО НЕ ДЕЛАЙТЕ;

Согласно изображению выше, вы увидите, что после выполнения запроса «ВСТАВИТЬ 0 0» показывает, что данные не введены.

Заключение

Мы получили представление о концепции вставки строк в таблицы, в которых данные либо отсутствуют, либо вставка не завершена, если найдена какая-либо запись, для уменьшения избыточности в отношениях базы данных.

Переназначьте кнопки мыши по-разному для разных программ с помощью X-Mouse Button Control
Может быть, вам нужен инструмент, который мог бы изменять управление вашей мышью с каждым приложением, которое вы используете. В этом случае вы можете...
Обзор беспроводной мыши Microsoft Sculpt Touch
Я недавно прочитал о Microsoft Sculpt Touch беспроводная мышь и решил ее купить. Побывав некоторое время, я решил поделиться своим опытом с ним. Эта б...
Экранный трекпад и указатель мыши AppyMouse для планшетов с Windows
Пользователи планшетов часто пропускают указатель мыши, особенно когда они привыкли пользоваться ноутбуками. Смартфоны и планшеты с сенсорным экраном ...