Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 15.01.2017
Сообщений: 28

Запрос вернул больше одного значения

13.01.2019, 18:40. Показов 3879. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возник вопрос , когда заполняю свою табличку, то кричит на

Вложенный запрос вернул больше одного значения. Это запрещено, когда вложенный запрос следует после =, !=, <, <=, >, >= или используется в качестве выражения.


и ссылается на этот триггер, что в нем не так?

MySQL
1
2
3
4
5
6
7
8
9
10
11
create trigger add_now_up_dist on distribution 
after update 
as 
begin 
SET NOCOUNT ON; 
update distribution 
set now_count_books = (select start_count_books from inserted) - (select start_count_books from deleted) + 
(select now_count_books from stock where id_st =(select id_st from inserted)) 
where id_distribution =(select id_distribution from inserted) 
end 
go
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.01.2019, 18:40
Ответы с готовыми решениями:

Запрос Select T-sql - Вложенный запрос вернул больше одного значения
Нужно посчитать комиссию от сделки. DealShare(комиссия) - поле таблицы agents, supplies - предложения(риелторы клиентам) deals-...

Вложенный запрос вернул больше одного значения
Для таблицы создано несколько триггеров, триггер CheckNum работает только если он один для таблицы, a с любым другим триггером выдает...

Вложенный запрос вернул больше одного значения
Всем добрый день! Есть база данных туров на SQL. Есть хранимая процедура, которая вычисляет цену тура исходя из цен билетов и...

5
5950 / 4526 / 1094
Регистрация: 29.08.2013
Сообщений: 28,107
Записей в блоге: 3
13.01.2019, 21:45
можно делать
SQL
1
SET xx = (1)
а у вас где то
SQL
1
2
SET xx = (1
               2)
делайте или select top 1 или проверяйте запросы
0
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
14.01.2019, 10:14
Цитата Сообщение от Neon492 Посмотреть сообщение
что в нем не так?
Практически всё.
Сколько записей в inserted и deleted? Подумайте над этим. Ведь там может быть миллиард записей!
0
785 / 616 / 273
Регистрация: 04.08.2015
Сообщений: 1,713
16.01.2019, 13:32
Neon492, inserted и deleted - это таблицы. А таблица может содержать и более одной строки.
А еще стоит подумать о том, что ваш триггер, если не добавить дополнительных условий проверки, бесконечно будет вызывать сам себя.
0
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
16.01.2019, 14:31
Цитата Сообщение от Igr_ok Посмотреть сообщение
А еще стоит подумать о том, что ваш триггер, если не добавить дополнительных условий проверки, бесконечно будет вызывать сам себя.
Во-первых, бесконечно не получится, ибо сервер запрещает вложенность более 32.
Во-вторых, ничто не мешает запретить рекурсивные вызовы триггера на уровне сервера.
0
35 / 29 / 15
Регистрация: 20.11.2010
Сообщений: 481
18.01.2019, 07:49
Ну и правильно он ругается.. как уже писал qwertehok вам необходимо
SQL
1
2
3
SELECT Top(1) start_count_books 
FROM inserted
ORDER BY DESC
Ибо может произойти такое, что первая таблица вам вернет 4 значения, а вторая 2. Ну соответственно он вам об этом и сообщает.
Либо просто задекларировать несколько переменных, в которые вы поместите эти запросы, а вычисление результата будете производить непосредственно над ними. Но опять же в 1 переменную вы поместите только 1 значение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.01.2019, 07:49
Помогаю со студенческими работами здесь

Вложенный запрос вернул больше одного значения
Здравствуйте, подскажите, пожалуйста, в чём может быть ошибка? Уже несколько раз перепроверил код, менял, всё что было было возможным, но...

Проблема с триггером Запрос вернул больше одного значения
Доброго времени суток! Сделал триггер для свое базы данных Суть в чем При добавлении в таблицу с перемещениями между блоками...

При условии having count(*) = 1 вложенный запрос вернул больше одного значения
Запрос выполняется с ошибкой update TFF_OBSCURE_PP set SUM_PP_ALL = (select TFF_PP.SUM_PP from TFF_PP where...

Ошибка при внесении записи в базу данных (вложенный запрос вернул больше одного значения)
Когда вношу новую запись, возникает ошибка: Вложенный запрос вернул больше одного значения. Это запрещено, когда вложенный запрос следует...

Вложенный запрос вернул больше одного значения Это запрещено, когда вложенный запрос следует после =, !=, <, <
Здравствуйте,проблема вот в чем,при добавление записи в таблицу,первая запись добавляется,а при добавление второй выдает что...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru