Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.11.2011, 17:47   #1
студенточка!
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 22
По умолчанию SQL server 2005 Вложенные запросы в данном контексте не разрешены

Подскажите пожалуйста, как в SQL server 2005 исправить такую ошибку:

Сообщение 1046, уровень 15, состояние 1, процедура new_nakladne, строка 5 Вложенные запросы в данном контексте не разрешены. Допускаются только скалярные выражения.

При попытке выполнить запрос:


use [моя база]
go
create procedure new_nakladne (@name nvarchar(50), @kol nvarchar(50), @sena nvarchar(50))
as

Begin
Insert into Nakladne values ((select ISNULL(MAX(id)+1,1) from Nakladne),
@name, @kol, @sena)
end

Последний раз редактировалось студенточка!; 21.11.2011 в 18:14.
студенточка! вне форума Ответить с цитированием
Старый 21.11.2011, 18:16   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Попробуйте так
Код:
Insert into Nakladne 
  select ISNULL(MAX(id)+1,1),@name,@kol,@sena from Nakladne
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 21.11.2011, 19:39   #3
студенточка!
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 22
По умолчанию

я попробовала теперь такая ошибка:
Сообщение 213, уровень 16, состояние 1, процедура new_nakladne, строка 5
Ошибка вставки: имя столбца или число предоставленных значений не соответствует определению таблицы.

Не подскажете в чем ошибка?
студенточка! вне форума Ответить с цитированием
Старый 21.11.2011, 21:07   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

При такой вставке кол-во полей таблицы куда вставляете должно соответствовать кол-ву полей в SELECT-е (исключая автоинкриментнре поле если оно есть) и типы соответствующих полей должны быть не противоречивы.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 22.11.2011, 16:51   #5
студенточка!
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 22
По умолчанию

Спасибо)))
студенточка! вне форума Ответить с цитированием
Старый 21.11.2012, 20:25   #6
Gleg
 
Регистрация: 02.07.2011
Сообщений: 8
По умолчанию

Я конечно дико извиняюсь, но немогли бы вы поподробней объяснить чайнику?
Gleg вне форума Ответить с цитированием
Старый 21.11.2012, 22:01   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Обьяснить что?
Почему свою тему не создал?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.11.2012, 17:40   #8
Gleg
 
Регистрация: 02.07.2011
Сообщений: 8
По умолчанию

Уже не надо. с этим сам разобрался)
Спасибо.
Gleg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вложенные запросы java_91 SQL, базы данных 1 07.07.2011 18:52
Вложенные запросы SQL KsandrXXX Помощь студентам 4 11.02.2011 11:40
THTTPCli, обработчик события выполняется в контексте основного потока profaller Работа с сетью в Delphi 4 08.02.2011 16:25
Как в C# рисовать в контексте любого окна либо в любой точке экрана? I.C.E Общие вопросы .NET 1 16.05.2010 19:02
С# Элемент а1 не существует в данном контексте boris-blade Общие вопросы .NET 4 05.03.2010 20:49