Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
а есть в MySQL оператор IF? (victor) 15/08/2008 - 23:25:28
      Re: а есть в MySQL оператор IF? (fAL) 17/08/2008 - 14:05:55
      Re: а есть в MySQL оператор IF? (victor) 17/08/2008 - 22:42:12

> Original message text:
> From: victor - 15/08/2008 - 23:25:28
> Subject:а есть в MySQL оператор IF?
> -----------------
> Удивлен, что в MySQL возможностей куда меньше чем в MSSQL. Думал, будет наоборот... :(
> Прочитал, что есть что-то типа IF(expr1,expr2,expr3)
> А что делать, если exprX представляет собой набор SQL-команд?
> Например, нижеприведенный код прекрасно работает в MSSQL, а как его портить на MySQL?
>
> IF @user_pwd=''
> BEGIN
> IF NOT EXISTS (SELECT * FROM TUsers WHERE user_name=@user_name)
> BEGIN
> INSERT INTO TUsers VALUES(@user_name,@user_pwd)
> SELECT 1
> END
> END
> ELSE
> BEGIN
> UPDATE TUsers SET user_pwd=@user_pwd WHERE user_name=@user_name AND user_pwd=''
> SELECT * FROM TUsers WHERE user_name=@user_name AND user_pwd=@user_pwd
> END
>
>


From: fAL - 17/08/2008 - 14:05:55
Subject:а есть в MySQL оператор IF?
-----------------
Не проверял, но вероятнее всего так:

IF @user_pwd='' THEN
IF NOT EXISTS (SELECT * FROM TUsers WHERE user_name=@user_name)THEN
INSERT INTO TUsers VALUES(@user_name,@user_pwd);
SELECT 1;
END IF;
ELSE
UPDATE TUsers SET user_pwd=@user_pwd WHERE user_name=@user_name AND user_pwd='';
SELECT * FROM TUsers WHERE user_name=@user_name AND user_pwd=@user_pwd;
END IF;

читай dev.mysql.com


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
33908



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |