PDA

Просмотр полной версии : Составной запрос


tarantas
24.03.2006, 00:41
День добрый.
Помогите, пожалуйста, создать состаной запрос.

Есть запрос SELECT * FROM xxx_table WHERE user_id =
После "=" можно добавить все, что угодно (по крайней мере я на это надеюсь).

Нужно сделать структурированный запрос с SELECT * FROM xxx_table WHERE user_id = (это никак не убрать), чтобы ещё выполнялось : UPDATE xxx_table SET xxx_column = n WHERE user_id = m

Знающих людей убедительно прошу помочь. :)

---

Т.е. попросту говоря: Мне нужно, чтобы выполнялся запрос : UPDATE xxx_table SET xxx_column = n WHERE user_id = m

Уже есть запрос : SELECT * FROM xxx_table WHERE user_id =
И после "=" можно вставить все что угодно.

Т.е. меня не интересует SELECT, он просто есть и его никак не убрать.

Мне хотелось бы, чтобы выполнялось UPDATE xxx_table SET xxx_column = n WHERE user_id = m

Спасибо. :)

ZaCo
24.03.2006, 01:41
подставь 1;UPDATE xxx_table SET xxx_column = n WHERE user_id = m
только не пытайся это провернуть в мускле :) в нем у тебя ничего не получится

tarantas
25.03.2006, 17:19
подставь 1;UPDATE xxx_table SET xxx_column = n WHERE user_id = m
только не пытайся это провернуть в мускле :) в нем у тебя ничего не получится
Пробовал. Пишет про неверный синтаксис. :(

Deem3n®
25.03.2006, 18:33
Видимо надо отсечь лишние данные в первоначальном запросе:
1;UPDATE xxx_table SET xxx_column = n WHERE user_id = m --

Ты уверен что серв переваривает составные запросы (like MSSQL)?

tarantas
10.04.2006, 21:44
2 и более запросы не прокатывают.

Т.е. SELECT ... ; UPDATE ...
Такое - не работает. Вообще, это наверно скорее даже sql-injection и я хочу ей воспользоваться.

Возможно ли вставить внутрь selecta запрос UPDATE ?

Я был бы очень благодарен, если бы кто-нибудь подсказал правильное решение.

Или, есть ещё такой вариант :
DELETE FROM xxx WHERE n_id = СЮДА МОЖНО ВСТАВИТЬ AND m_id = x

---

Возможно ли впихнуть UPDATE ?

Спасибо. ОЧЕНЬ надеюсь на помошь :(

tarantas
10.04.2006, 21:47
Например я знаю, что существует типа такого :

DELETE FROM Salespeople
WHERE EXISTS
(SELECT *
FROM Customers
WHERE rating = 100
AND Salespeople.snum = Customers.snum);
(пример).

Так неужели вместо долбаного SELECT нельзя использовать UPDATE ?