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

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

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2015, 08:22   #1
xakkkkker
Форумчанин
 
Аватар для xakkkkker
 
Регистрация: 15.12.2007
Сообщений: 226
По умолчанию SELECT + nolock

Доброе время суток!
Есть 2 машины с установленным на них MS SQL Server 2008.
Выполняю некоторый SQL код на одной машине, все работает нормально, а на второй ни в какую.

Код:
select distinct F700, d_18.t600 from KF569 d2 (nolock) 
		join SS700 d (nolock) on d.F700 = d2.F700 and d.D430 in (2703, 2704)
		left join SS700_18 (nolock)  d_18 on d_18.F700 = d2.F700_2
На второй выдает ошибку.
Цитата:
Сообщение 102, уровень 15, состояние 1, строка 3
Неправильный синтаксис около конструкции "d_18".
Может ли быть это из за настройки SQL Server и если да то в какую сторону смотреть?
xakkkkker вне форума Ответить с цитированием
Старый 14.10.2015, 08:50   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Наверное около JOIN это указание нельзя применять.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.10.2015, 08:54   #3
xakkkkker
Форумчанин
 
Аватар для xakkkkker
 
Регистрация: 15.12.2007
Сообщений: 226
По умолчанию

если
Код:
left join SS700_18 (nolock)  d_18 on d_18.F700 = d2.F700_2
изменить на
Код:
 left join SS700_18  d_18 (nolock)  on d_18.F700 = d2.F700_2
работает на обеих машинах, но код я не могу изменить так как этот код в чужой программе. Поэтому думаю настроить сервер чтоб он работал на обеих машинах
xakkkkker вне форума Ответить с цитированием
Старый 14.10.2015, 10:33   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
left join SS700_18 (nolock) d_18 on d_18.F700 = d2.F700_2
Здесь налицо просто синтаксическая ошибка. Как такой запрос работает на одной из баз? Чудеса в решете
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.10.2015, 11:00   #5
xakkkkker
Форумчанин
 
Аватар для xakkkkker
 
Регистрация: 15.12.2007
Сообщений: 226
По умолчанию

Тоже так думаю, может какие то настройки на сервере пропускают ошибки и выводят результат.
xakkkkker вне форума Ответить с цитированием
Старый 14.10.2015, 12:13   #6
xakkkkker
Форумчанин
 
Аватар для xakkkkker
 
Регистрация: 15.12.2007
Сообщений: 226
По умолчанию

Оказывается в свойствах БД, на вкладке параметры надо было установить параметр "Уровень совместимости" - SQL Server 2008 (100)
xakkkkker вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JSP + HQL: как в блоке <select></select> вызвать метод из DAO? Blondy Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 4 01.06.2013 15:54
mysql_query("select purse ?????select purse??? wmjaqa PHP 3 24.07.2012 06:45
В зависимости от выбора в Select изменить значения другого Select Tayfun HTML и CSS 3 18.08.2011 00:05
Select t1.N,t1.FIO,(select t2.acc from t2 where t2.type=1) from t1,t2 mavlon_m SQL, базы данных 2 17.09.2009 15:28
Передача значения в <select></select> kkkggg Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 06.09.2007 00:26