RK3DNP

mysql обновление данных при совпадении 2ух столбцов

Рекомендованные сообщения

Имеется таблица с полями: юзер, офис, телефон
Требуется если поле юзер и офис такой уже есть, то новая строка не создается, меняется только телефон
Если хоть юзер или офис не совпадают, то создается новая строка.

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

INSERT INTO users(login, password) VALUES('login', 'password') ON DUPLICATE KEY UPDATE password='password';

@@ROWCOUNT=0 только в sql используется :(

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Так выведи поле, в котором уже юзер и телефон совпадают, если такая строка есть, то не делать запрос, если нету, то создать новую строку. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, DivMan сказал:

Так выведи поле, в котором уже юзер и телефон совпадают, если такая строка есть, то не делать запрос, если нету, то создать новую строку. 

Не понял, что означает вывести поле?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

получается делаю запрос select, если нет записи в базе, то создаю запись. 
Делаю через powershell, не получается сделать через if, не срабатывает. 

$sql.CommandText = "select value from prj15 where value='8' and otdel='$aa';"
if (!sql)  {Write-Host "My variable is NULL"}
else {Write-Host "My variable"}

 

Изменено пользователем RK3DNP

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

SELECT COUNT(`email`) FROM `prj15` WHERE `value` = '8' and `otdel`='aa`
Если результат >0 значит запись есть

(email как пример).

Изменено пользователем jdk

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

Карта разработчиков

Карта участников

Отметь себя на карте для поиска или предложения работы