Страница 1 из 2
Множественный SELECT в SQL скрипте - проблема с выборкой
Добавлено: 12 авг 2004, 13:50
chief
В начале скрипта вызывается хранимая процедура с output параметром, за ней идет еще несколько селектов из разных таблиц и
в завершении скрипта select из таблицы который (мне так думается) должен возвращать одну запись.
Возвращает этот скрипт в PHP одну запись с одним полем где содержится output параметр начальной процедуры.
Как можно выбрать из последнего селекта?
Коротко о себе:
Apache 1.3, PHP 4-й, php_sybase_ct.dll
Добавлено: 12 авг 2004, 14:19
Absurd
Чего-то похожее на
http://www.php.net/manual/en/function.m ... result.php
А именно кто-то пишет что
gagarin[at]i-dep.com
09-Dec-2002 11:39
It seems that mssql_next_result does not work with result sets returned by stored procedures.
Добавлено: 12 авг 2004, 14:21
AiK
chief, Sybase может возвращать до 4-х резалтсетов: один под запросы, один под output параметры SP, один под возвращаемое значение SP и ещё один не помню как называется, но под всякую лабуду типа "1 row(s) affected". Соответственно ты должен либо пробегать по всем резалтсетам, либо подавлять лишние, используя волшебные слова типа set nocount on и составляя грамотно запросы к серверу.
Добавлено: 12 авг 2004, 14:26
Absurd
AiK, php_sybase_ct.dll наверное используется не для доcтупа к SyBase , а к MSSQL .
Добавлено: 12 авг 2004, 14:40
AiK
Absurd, а это почти монопенисуально. В любом случае используется TDS от Sybase, а не его расширение от MS

Кроме всего прочего, упомянутый выше next работает для резалтсетов одного типа. Если я ничего не путаю.
Т.е. если будет два подряд запроса - то всё нормально. Если эти же два запроса будут внутри хранимой процедуры с output параметром, то дальше output параметра дело не продвинется...
Добавлено: 18 авг 2004, 16:09
chief
Соответственно ты должен либо пробегать по всем резалтсетам
буду благодарен за совет как по ним пробежаться из РыНыРы
Добавлено: 18 авг 2004, 16:13
chief
php_sybase_ct.dll наверное используется не для доcтупа к SyBase , а к MSSQL
Раз уж зашла речь о типе сервера,
то речь зашла о Sybase ASE 12.5 под HP-UX
Добавлено: 18 авг 2004, 16:19
chief
монопенисуально.
ни пениса себе.... такого культурного мата уже давно не слыхивал.... изящно.....
А вообще-то хочется знать почему для двух селектов (пусть один из них - SP) резалты формируются на основании первого а не последнего?
и см. через один выше
Добавлено: 18 авг 2004, 19:01
AiK
такого культурного мата уже давно не слыхивал
Тем не менее вынужден сам себе плюсов наставить (смайлы по вкусу)
Что касается резалтсетов, то есть подозрение, что это недоработка разработчиков php_sybase_ct.dll.
Что-то подходящих методов я не разглядел...
Добавлено: 19 авг 2004, 10:01
chief
И что можете порекомендовать?
MS библиотеку?
или ODBC?
или какое-то мастерское воплощение средствами все той же php_sybase_ct.dll?