Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Kxo Member Откуда: Сообщений: 15 |
Объявляю:DECLARE @tbl table ( TableName varchar(50), TableIdName varchar(50), TableCodeName varchar(50), OrgCodeName varchar(50), OrgIdName varchar(50), Id int identity(1,1) ) DECLARE @Tab varchar(50) DECLARE @TabId varchar(50) DECLARE @TabCode varchar(50) DECLARE @OrgCode varchar(50) DECLARE @OrgId varchar(50) INSERT INTO @tbl VALUES ( 'Demo','DemoId','DEMO','DEMO','DemoId') DECLARE @i INT set @i=1 Присваиваю: set @Tab = SELECT TableName FROM @tbl WHERE Id = @i --1 set @TabId = SELECT TableIdName FROM @tbl WHERE Id = @i--2 set @TabCode = SELECT TableCodeName FROM @tbl WHERE Id = @i--3 set @OrgCode = SELECT OrgCodeName FROM @tbl WHERE Id = @i--4 set @OrgId = SELECT OrgIdName FROM @tbl WHERE Id = @i--5 На все строчки присваивания ошибка Incorrect syntax near the keyword 'SELECT'. Как исправить ошибку? |
27 июн 13, 13:42 [14491513] Ответить | Цитировать Сообщить модератору |
serpentariy Member Откуда: Сообщений: 265 |
SELECT @Tab = TableName FROM @tbl WHERE Id = @i --1 ... |
27 июн 13, 13:51 [14491594] Ответить | Цитировать Сообщить модератору |
Ken@t Member Откуда: 大地 Сообщений: 3264 |
Правильный ответ |
||
27 июн 13, 13:54 [14491635] Ответить | Цитировать Сообщить модератору |
скобки расставить
Guest |
Kxo, set @Tab = (SELECT TableName FROM @tbl WHERE Id = @i) |
27 июн 13, 13:58 [14491675] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47045 |
Что это за говнокод такой вообще в стартовом сообщении?! Там не только с присвоением непонятки... К примеру, как же можно писать INSERT без перечисления полей таблицы?! И дальше всё в таком же духе. |
||||
27 июн 13, 14:00 [14491687] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47045 |
Но на такой стиль даже смотреть больно. :)) |
||
27 июн 13, 14:05 [14491740] Ответить | Цитировать Сообщить модератору |
Ken@t Member Откуда: 大地 Сообщений: 3264 |
На вопрос
|
||||
27 июн 13, 14:07 [14491754] Ответить | Цитировать Сообщить модератору |
Kxo Member Откуда: Сообщений: 15 |
Вроде работает. А можно всем пяти переменным данные одним запросом присвоить? Что-то типо SELECT @Tab,@TabId,@TabCode.. = TableName,TableIdName,TableCodeName... FROM @tbl WHERE Id = @i ? |
27 июн 13, 14:08 [14491761] Ответить | Цитировать Сообщить модератору |
Гавриленко Сергей Алексеевич Member Откуда: Moscow Сообщений: 37138 |
|
||
27 июн 13, 14:09 [14491776] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47045 |
Запятыми разделяются сами операторы присваивания. |
||||
27 июн 13, 14:11 [14491793] Ответить | Цитировать Сообщить модератору |
Kxo Member Откуда: Сообщений: 15 |
НУ пардон, я тут без году неделя. И пока умею только такой 'гавно-код' писать. Если что неправильно пишу - говорите, учту, буду использовать более правильные варианты. Что касается Insert'a, вы имеете ввиду использовать INSERT INTO @tbl (TableName,TableCodeName,TableIdName,OrgIdName,OrgCodeName) VALUES ('Demo','DemoId','DEMO','DEMO','DemoId')или я неправильно понял? |
27 июн 13, 14:20 [14491882] Ответить | Цитировать Сообщить модератору |
pkarklin Member Откуда: Москва (Муром) Сообщений: 74925 |
Зачем кого-то слушать, если есть документация с правильными вариантами?! |
||
27 июн 13, 14:22 [14491892] Ответить | Цитировать Сообщить модератору |
Kxo Member Откуда: Сообщений: 15 |
pkarklin, Люди тоже предлагают правильные варианты. Но узнать правильный вариант от человека получается намного быстрее, чем выискивая его в книге. |
27 июн 13, 14:33 [14491995] Ответить | Цитировать Сообщить модератору |
Mnior Member Откуда: Кишинёв Сообщений: 6723 |
Вам сюда. |
||
27 июн 13, 17:59 [14493646] Ответить | Цитировать Сообщить модератору |
Kxo Member Откуда: Сообщений: 15 |
Как вы себе представляете это? Требуется специалист в области Т-SQL на разовую работу. Работа заключается в разъяснение ошибки [b]Incorrect syntax near the keyword 'SELECT'.[/b]. Оплата 10-20р. |
||||
28 июн 13, 10:15 [14495900] Ответить | Цитировать Сообщить модератору |
Ken@t Member Откуда: 大地 Сообщений: 3264 |
Нет. Я нихрена незнаю - дайте мне знания , один академ час - 1000р. |
||||
28 июн 13, 10:18 [14495919] Ответить | Цитировать Сообщить модератору |
Kxo Member Откуда: Сообщений: 15 |
Зачем мне тратить косарь на посиделки, если мне нужно только узнать правильный синтаксис присвоения? Остальное по мере необходимости можно найти в интернетах, не тратя на это деньги |
||||
28 июн 13, 10:59 [14496166] Ответить | Цитировать Сообщить модератору |
Mnior Member Откуда: Кишинёв Сообщений: 6723 |
Человек это вы, вы же пуп земли и мы вам всё должны, по гроб жизни, бесплатно. Наше время и внимание ничего не стоит. И мы, халопы, тут тусуемся не чтобы учить людей понимать, а просто время некуда девать. Бездельники. Плётки на нас нет. |
||||
28 июн 13, 12:36 [14496757] Ответить | Цитировать Сообщить модератору |
Kxo Member Откуда: Сообщений: 15 |
Mnior,
Вы ничего мне не должны. Вы человек, а не холоп и сами добровольно решали давать ответ или нет. Но в любом случае за все ваши ответы ничем кроме 'спасибо', я отплатить не смогу |
||
28 июн 13, 13:36 [14497102] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Синтаксис можно изучить здесь http://msdn.microsoft.com/en-us/library/bb545450.aspx |
28 июн 13, 16:20 [14498275] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |