powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / SqL запрос
6 сообщений из 6, страница 1 из 1
SqL запрос
    #37276823
faustgreen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите с запросом:
sqlexec(ConnectServ,'select s06dopustr.inn_d, s06dopustr.room_d, s06dopustr.xarakt_d, s06dopustr.dtpost_d, s06dopustr.dtust_d, alias1.naim_snu, alias2.tipu_stu
from s06dopustr left outer JOIN sprnaimu_d as alias1 ON S06DopUstr.Idnaim_d=alias1.id_snu left outer join sprtipu_d as alias2 on alias1.idtip_snu=alias2.id_stu where inn_d=?inntemp ','temps06')

(запрос полей s06dopustr.inn_d, s06dopustr.room_d, s06dopustr.xarakt_d, s06dopustr.dtpost_d, s06dopustr.dtust_d из главной таблицы (s06dopustr) + запрос на поле naim_sn связанного с главной таблицей S06DopUstr.Idnaim_d=sprnaimu_d.id_snu + запрос на поле tipu_stu связанного с таблицей (tipu_stu) sprnaim_d.idtip_snu=sprtipu_d.id_stu)

структура таблиц:

s06dopustr
inn_d, .room_d, .xarakt_d, .dtpost_d, dtust_d, idnaim_d

sprnaimu_d
id_snu, naim_snu, idtipu_snu

sprtipu_d
id_stu, tipu_stu

у меня выдает ошибку command "contains unrecognized phrase/keyword"

пример из хелпа:
CLOSE ALLCLOSE DATABASESOPEN DATABASE (HOME(2) + 'Data\TestData')SELECT TAlias1.company, TAlias2.order_ID, ; TAlias3.first_name, TAlias3.last_name ; FROM customer AS TAlias1 ; INNER JOIN orders AS TAlias2 ; ON TAlias1.cust_id = TAlias2.cust_id ; INNER JOIN employee AS TAlias3 ; ON TAlias2.emp_id = TAlias3.emp_id ; ORDER BY TAlias1.company ASC
...
Рейтинг: 0 / 0
SqL запрос
    #37276857
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
* Формируем символьную строку, содержащую текст запроса
LOCAL selectSQL
selectSQL = 'select' + ;
		' s06dopustr.inn_d' + ;
		',s06dopustr.room_d' + ;
		',s06dopustr.xarakt_d' + ;
		',s06dopustr.dtpost_d' + ;
		',s06dopustr.dtust_d' + ;
		',alias1.naim_snu' + ;
		',alias2.tipu_stu' + ;
	' from s06dopustr' + ;
	' left outer JOIN sprnaimu_d as alias1 ON S06DopUstr.Idnaim_d=alias1.id_snu' + ;
	' left outer join sprtipu_d as alias2 on alias1.idtip_snu=alias2.id_stu' + ;
	' where inn_d=?inntemp '

* Формируем значение параметра, если оно не было сформировано ранее
*inntemp = ...

* Выполняем запрос, одновременно проверяя возможные ошибки
if sqlexec(ConnectServ,selectSQL,'temps06')< 0 
	* Если возвращаемое значение меньше нуля, то в процессе выполнения произошла ошибка
	* Уточняем причину ошибки
	Local laError( 1 )
	=AERROR(laError)
	MessageBox(laError[ 2 ])
endif
...
Рейтинг: 0 / 0
SqL запрос
    #37276929
faustgreen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделал все как описано, выдало сообщение:
"Ошибка подключения[Microsoft][ODBC driver for Oracle][Oracle]ORA-00905:Отсутствует ключевое поле "
...
Рейтинг: 0 / 0
SqL запрос
    #37276947
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так сразу надо было говорить, что это Оракл.
...
Рейтинг: 0 / 0
SqL запрос
    #37277002
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
faustgreenсделал все как описано, выдало сообщение:
"Ошибка подключения[Microsoft][ODBC driver for Oracle][Oracle]ORA-00905:Отсутствует ключевое поле "
В подобных запросах желательно указывать внутренний алиас для ВСЕХ полей. Про Oracle точо не скажу, но у Вас не указан алиас поля в директиве WHERE

where inn_d=?inntemp

вероятно, надо дополнить алиасом таблицы

where s06dopustr.inn_d=?inntemp
...
Рейтинг: 0 / 0
SqL запрос
    #37277016
faustgreen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок. Спасибо за советы. Буду пробывать.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / SqL запрос
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]