Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/103: Рейтинг темы: голосов - 103, средняя оценка - 4.73
 Аватар для body90
467 / 344 / 19
Регистрация: 26.05.2009
Сообщений: 2,696

Если строка существует - обновить, иначе - вставить новую

11.01.2014, 09:06. Показов 21289. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Подскажите, как сделать в MSSQL запрос, который работал бы по такой логике: "если строка существует - обновить, иначе - вставить новую"?
Нагуглил несколько подобных тем с ответами, но там везде явно указано, что это для MySQL - не мой вариант.
Благодарю за внимание!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.01.2014, 09:06
Ответы с готовыми решениями:

Добавить если не существует иначе обновить redbeanphp
Есть таблица tags каждый пользователь выбирает теги и они забиваются в бд! Проблема такая нужно добавить если не существует тегов данного...

Если есть запись обновить, иначе вставить в Access
Здравствуйте, надо мне сделать приложение на C# для работы с базой Access. Заступорил когда надо обновить данные, если артикул совпадает....

Условия. Если числовое поле пустое, то вставить туда ноль, иначе вставить значение этого поля
Доброго времени суток! Пытаюсь написать запрос, который в поле Телефон вставляет нули если там пусто, иначе показывает что в поле. ...

4
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
11.01.2014, 11:03
MERGE (Transact-SQL)
1
 Аватар для Lenoshka
39 / 39 / 3
Регистрация: 22.02.2013
Сообщений: 117
Записей в блоге: 2
11.01.2014, 17:17
Я делала т.о.:
SQL
1
2
3
4
5
6
7
8
9
10
11
IF(EXISTS (SELECT * FROM (имя таблицы, где ищется запись) WHERE (условие, которое должно выполниться)))
        BEGIN
            UPDATE (имя таблицы, где ищется запись)
            SET (данные, которые будут обновляться)
            WHERE  (условие)
        END
    ELSE
        BEGIN
            INSERT  INTO (имя таблицы, где ищется запись)
            VALUES()
        END
Может немного напутанно, но суть, думаю, понятна.
3
 Аватар для body90
467 / 344 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
11.01.2014, 19:17  [ТС]
Если я отдам такую строку в SqlCommand, она будет работать или нужно делать хранимкой?
0
 Аватар для Lenoshka
39 / 39 / 3
Регистрация: 22.02.2013
Сообщений: 117
Записей в блоге: 2
13.01.2014, 10:38
Да, собственно, все можно передать просто как sql-команда
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.01.2014, 10:38
Помогаю со студенческими работами здесь

Если есть то обновить, иначе добавить
У меня есть таблица вида: NOMER COD. Нужно проверить, если телефон уже есть в базе, то обновить COD, если нет в базе, то создать запить...

Функция нахождения самой длинной стороны треугольника, если он существует, иначе возвращает 0
Помогите составить функцию с именем fun3_1 для нахождения из трех произвольных чисел А, В, С, задающих длины сторон треугольника, самую...

Не создавать запись в БД если она уже существует а просто обновить
Доброго всем дня. Ситуация такая, есть БД MSSQL и php скрипт добавления данных Задача в следующем, как реализовать так чтобы, если...

Если строка матрицы A упорядочена по возрастанию, соответствующему элементу массива B присвоить 1, иначе 0
Дано А двумерный массив. Составь В(7) массив по следующему условию: 1 присвой к B (і), если элементы строк і находятся по возрастанию,...

Если строка начинается на 'abc', то заменить их на 'www', иначе добавить в конец строки 'zzz'
Доброго времени суток. Есть задание : "Дана строка. Если она начинается на 'abc', то заменить их на 'www', иначе добавить в конец строки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru