powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / запуск запроса в sql базе
39 сообщений из 39, показаны все 2 страниц
запуск запроса в sql базе
    #38072744
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуйста.
Ситуация такая.
Несколько запросов с параметрами param_num и param_date в виде блока программы записаны в мемо поле SQL базы.
например: dbo.base1.fiel_mem

Вопрос: Как из фокс про запустить этот блок с передачей туда параметров и забрать оттуда результат в виде таблицы.

есть еще вариант, что весь блок программы написанный для sql хранится в переменной фоксы mem_text. Как этот блок запустить из переменной на sql сервере ?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072773
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
F1 - sqlexec()
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072796
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FfffffffffffffffF1 - sqlexec()
Покажите синтаксис, если там блок программы состоящий из кучи запросов, создания темповых таблиц и т.д.
Простые запросы да, работают, а блок программы - нет.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072831
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viart,

Вытащи из мемо-поля в строку и подставь ее в SQLEXEC.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072849
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я не силен в sql, поэтому и спрашиваю
подскажите синтаксис, чтобы запустить и блок из переменной , и параметры, и указать куда выгрузить результат. В хелпах не нашел.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072868
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Команды блока должны быть разделены символом ;. Все остальное - так же, как и с одной командой. Примеры SQLExec с параметрами есть в Хелпе.
Не совсем понятно, как блок без заполненных параметрови может храниться в переменной.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072879
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FfffffffffffffffНе совсем понятно, как блок без заполненных параметрови может храниться в переменной.Ну хранится там строка, где есть к-либо имена переменных (параметров).
Перед стартом sqlexec им присваиваются к-либо значения...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072895
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пусть автор лучше приведет пример.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072914
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viartя не силен в sql, поэтому и спрашиваю
подскажите синтаксис, чтобы запустить и блок из переменной , и параметры, и указать куда выгрузить результат. В хелпах не нашел.Почему по форуму не поискал? читай, допиливай самостоятельно.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072922
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот маленький кусочек:

create table #tmp ( имена полей )

insert into #tmp
select поля
from таблица where ...date=@@@param_date and ...

declare @mem1
...
begin
select top 1 ...

SET @CMD = 'alter table #tmp ' +
...

EXECUTE(@CMD)

select * from #tmp - здесь вывод результата.

все это хранится в мемо поле одной из записи
как из фокспро это запустить?
Как ни пробую, не получается.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072943
Дед Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*/bdConn Номер соединения с сервером

m.cursor = "TempCursor" && Имя сурсора, если суда будет формироваться ответ сервера
m.sqlval = <Имя таблицы>.<Имя поля Memo> && Строка запроса из мемо-поля

mmm = SQLEXEC(bdConn, m.sqlval, m.cursor)
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072952
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как вы предполагаете параметры заменять значениями?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072969
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед Евгений*/bdConn Номер соединения с сервером

m.cursor = "TempCursor" && Имя сурсора, если суда будет формироваться ответ сервера
m.sqlval = <Имя таблицы>.<Имя поля Memo> && Строка запроса из мемо-поля

mmm = SQLEXEC(bdConn, m.sqlval, m.cursor)

bdConn Номер соединения с сервером - это ясно

m.cursor = "TempCursor" - с этим тоже понятно

m.sqlval = <Имя таблицы>.<Имя поля Memo> && Строка запроса из мемо-поля

здесь чтобы запустить мемо поле , его еще надо найти - Select * from dbo.ttt where dbo.ttt.id=aaa

mmm = SQLEXEC(bdConn, m.sqlval, m.cursor) - а как туда передать параметры?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38072989
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Туда - никак.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073309
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viartкак из фокспро это запустить?
Как ни пробую, не получается.Как пробовали?
Вместо
from таблица where ...date=@@@param_date and ...
напишите
Код: sql
1.
from таблица where ...date=?Переменная_со_значением_параметра and ...


Надеюсь, догадаетесь что надо поставить вместо слова Переменная_со_значением_параметра?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073558
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пробовал по разному.
По моему фокс просто не прожевывает синтаксис SQL,
и вторая причина , нашел в одном из хелпов, длина выражения в SQLEXEC() должна быть не более 255 символов,
а блок в мемо поле там наааааамного больше.

Тут надо типа SQLEXEC( exec ..... или call .... )
кто знает подскажите.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073570
ViartПробовал по разному.Прелестно. И все пробы были правильными? А Вы знаете эти правильные способы? И мы их все должны угадать?По моему фокс просто не прожевывает синтаксис SQL, А что это такое - синтаксис SQL? Где такой термин увидели? С каких пор у SQL появился один синтаксис? А фоксовый диалект языка SQL не пробовали изучить, а не изобретать или пытаться использховать какой-то другой?и вторая причина , нашел в одном из хелпов, длина выражения в SQLEXEC() должна быть не более 255 символов,Чушь. Ни в одном из хелпов такого нет.а блок в мемо поле там наааааамного больше.Ну и что?
Тут надо типа SQLEXEC( exec ..... или call .... )
кто знает подскажите.Уже подсказали. Читать не пробовали?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073580
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
правильный проходящий :)
Я попросил помочь, а не умничать, не знаешь, проходи мимо.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073587
Viart,
Не понимаю, зачем хранимые процедуры хранить в мемо - полях?
Не лучше ли хранить их в том виде, в каком им и положено быть - в виде хранимых процедур на сервере. И уже в таком виде их вызывать... передавая в них только параметры... И не тянуть все на клиента, чтобы потом отсылать обратно на сервер...

Либо, если уж Вам так хочется, напишите хранимую процедуру - оболочку ("фабрику" в терминах С++), которая будет выполнять то, что вы хотите сделать: читать данные с мемо-поля, формировать необходимые команды, передавать необходимые параметры и т.д.
Только она будет работать на сервере... А вы ей будете управлять через SqlExec()...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073616
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все не так просто.
Есть большой программный комплекс, покупной, в нем есть мастер запросов, который сам все сочиняет и постоянно это переписывает, хранится все это в мемо полях, т.е. изменять под себя эти блоки я не могу. Нужно написать прогу, которая запускала бы эти процессы по моему расписанию и сама сохраняла результаты. вручную все это просто очень муторно.
Вот и вся задача.
Кто подскажет? Я не очень силен во всем этом.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073685
Viart,
Тогда выход только один. Пишите хранимую процедуру (функцию) на сервере и всю работу (поиск записи, из которой читается мемо-поле, формирование команд для запуска, передачу параметров и т.д.) выполняйте в ней. На клиента - передавайте уже результат работы...
Делов-то. Только выучить T-SQL... :-)))
Или поищите подобную функцию среди хранимых процедур / функций Вашего программного комплекса... Наверняка есть похожий модуль...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073708
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, наверное что то подобное и придется делать.
Спасибо за совет. Примерно в этом направлении и шел.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073808
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viartправильный проходящий :)
Я попросил помочь, а не умничать, не знаешь, проходи мимо.Что такое умничать? А что, лучше глупничать и нести чушь как некоторые? Мы таки увидим конкретику или будем обсуждать сферического коня в вакууме?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073859
Sergey SizovМы таки увидим конкретику или ...
Так была же "конкретика"...
Например, вот:
ViartЕсть большой программный комплекс, покупной, в нем есть мастер запросов, который сам все сочиняет и постоянно это переписывает, хранится все это в мемо полях, т.е. изменять под себя эти блоки я не могу. Нужно написать прогу, которая запускала бы эти процессы по моему расписанию и сама сохраняла результаты. вручную все это просто очень муторно.
Вот и вся задача.
Кто подскажет? Я не очень силен во всем этом.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073880
ViartПробовал по разному.
нашел в одном из хелпов, длина выражения в SQLEXEC() должна быть не более 255 символов,

Вы этот хелп немного не правильно поняли... Да, на самом деле там сказано:
Help...check to see if it exceeds the maximum length of a string literal in Visual FoxPro, which is 255 characters. Longer strings will cause a "Command contains unrecognized phrase/keyword" error. However, you can pass long SQL statements if you break them up into several concatenated literals...
Т.е. длина выражения должна быть не более 255 символов. Но, если это таки произошло, Вы можете разбить длинную строку на несколько строк меньшего размера и объединить их в SqlExec()...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38073923
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за совет, веду поиски в направлении хранимых процедур. Никогда раньше не занимался SQL, Затягивает :).
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38074045
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Станислав С...кийSergey SizovМы таки увидим конкретику или ...
Так была же "конкретика"...
Например, вот:
ViartЕсть большой программный комплекс, покупной, в нем есть мастер запросов, который сам все сочиняет и постоянно это переписывает, хранится все это в мемо полях, т.е. изменять под себя эти блоки я не могу. Нужно написать прогу, которая запускала бы эти процессы по моему расписанию и сама сохраняла результаты. вручную все это просто очень муторно.
Вот и вся задача.
Кто подскажет? Я не очень силен во всем этом. Это не конкретика, а вода. Где испробованный код? Или нам предлагается его угадать?
Вам уже написали общий вид коанды получения результата запроса
Код: sql
1.
mmm = SQLEXEC(bdConn, m.sqlval, m.cursor)


Он единственный и потому непонятны Ваши поиски какого-то особенного способа получения нужного Вам результата.
Что тут непонятно? Вы не знаете как в переменную засунуть содержимое мемо поля?
Как подставить значения параметров тоже уже показано. Так что непонятно?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38074097
Sergey SizovЧто тут непонятно? Вы не знаете как в переменную засунуть содержимое мемо поля?
Как подставить значения параметров тоже уже показано. Так что непонятно?
То есть, Вы предлагаете исходное выражение, содержащееся в мемо-поле:
Код: sql
1.
2.
3.
insert into #tmp
select поля
from таблица where ...date=@@@param_date and ...


преобразовать к виду:
Код: sql
1.
2.
3.
insert into #tmp
select поля
from таблица where ...date = ?param_date and ...


Т.е. фактически написать свой небольшой парсер Sql-выражений?
Sergey SizovКак подставить значения параметров тоже уже показано.
И как это сделать? как подставить параметры в исходный запрос (формата T-Sql), а не в преобразованный (формата FoxPro-Sql)?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38074128
Sergey SizovЭто не конкретика, а вода.
Нет, это вполне нормальная постановка практической задачи "сопровожденца".
Другими словами ситуация следующая:
Имеется база на MS SQL SERVER. Некий программный комплекс формирует для выполнения определенных действий набор SQL-команд Для определенности, будем считать, что этот генератор SQL-выражений = макрорекордер, то есть записывает SQL-команды по действиям пользователя и они сохраняются в мемо-поля таблицы на MS SQL SERVER.
Править запросы непосредственно в самом мемо-поле нельзя, так как иначе "полетит" вся "логика" программного комплекса. Править руками на клиенте - непродуктивно. Особенно, если нужно организовать запуск некоей процедуры в ночное время - в общем случае никто не знает, что запишет в мемо-поле умный генератор запросов и в какое время, как зависят эти запросы от действий пользователя... А выполнить процедуру надо. Вот и извращается ТС для решения данной задачи...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38074149
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все совершенно верно. Так и есть. Вот пытаюсь достучаться. небольшой опыт на фоксе есть. на sql полный нуль. Сижу осваиваю.
Думаю сделать удаленную процедуру и с ее помощью уже рулить. Напрямую из фокса решение такой задачи не нашел.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38074972
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Станислав С...кийSergey SizovЧто тут непонятно? Вы не знаете как в переменную засунуть содержимое мемо поля?
Как подставить значения параметров тоже уже показано. Так что непонятно?
То есть, Вы предлагаете исходное выражение, содержащееся в мемо-поле:
Код: sql
1.
2.
3.
insert into #tmp
select поля
from таблица where ...date=@@@param_date and ...


преобразовать к виду:
Код: sql
1.
2.
3.
insert into #tmp
select поля
from таблица where ...date = ?param_date and ...


Т.е. фактически написать свой небольшой парсер Sql-выражений? Нет, всего лишь подстановка строки вместо метасимволв @@@. Например, StrTran(memo,'@@@', '?'). Так понятно? Sergey SizovКак подставить значения параметров тоже уже показано.
И как это сделать? как подставить параметры в исходный запрос (формата T-Sql), а не в преобразованный (формата FoxPro-Sql)?Знак вопроса и есть подстановка значения параметра в запрос. Никаких преобразований в формат фокса не было и никто про него кроме Вас пока не писал. Что за фантазии?
Может, наконец-то, займемся практикой, а не пустыми теоритизированиями?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38075091
Sergey SizovСтанислав С...кийпропущено...

То есть, Вы предлагаете исходное выражение, содержащееся в мемо-поле:
Код: sql
1.
2.
3.
insert into #tmp
select поля
from таблица where ...date=@@@param_date and ...


преобразовать к виду:
Код: sql
1.
2.
3.
insert into #tmp
select поля
from таблица where ...date = ?param_date and ...


Т.е. фактически написать свой небольшой парсер Sql-выражений? Нет, всего лишь подстановка строки вместо метасимволв @@@. Например, StrTran(memo,'@@@', '?'). Так понятно? пропущено...

И как это сделать? как подставить параметры в исходный запрос (формата T-Sql), а не в преобразованный (формата FoxPro-Sql)?Знак вопроса и есть подстановка значения параметра в запрос. Никаких преобразований в формат фокса не было и никто про него кроме Вас пока не писал. Что за фантазии?
Может, наконец-то, займемся практикой, а не пустыми теоритизированиями?
А Вас не смущает, что параметры/переменные в T-SQL вообще-то задаются через один символ '@'... Некоторые системные функции/переменные - предваряются двумя символами '@'. А здесь их - целых три! Дополнительное использование еще двух '@' (если только это не описка ТС) несет какой-то иной смысл нежели просто передача параметра! Так что, без парсера - ну никак....
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38075357
P-032
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приведи законченный кусок кода который лежит в мемо. И вообще.. что он в мемо делает на стороне клиента ? Почему не BLOB например ?
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38075391
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Станислав С...кийSergey Sizovпропущено...
Нет, всего лишь подстановка строки вместо метасимволв @@@. Например, StrTran(memo,'@@@', '?'). Так понятно? пропущено...
Знак вопроса и есть подстановка значения параметра в запрос. Никаких преобразований в формат фокса не было и никто про него кроме Вас пока не писал. Что за фантазии?
Может, наконец-то, займемся практикой, а не пустыми теоритизированиями?
А Вас не смущает, что параметры/переменные в T-SQL вообще-то задаются через один символ '@'... А Вас не смущает тот факт, что символ @ к передаче параметров не имеет никакого отношения? Вас не смущает тот факт, что этот символ есть обязательный в T-SQL преффикс переменной и не более того? Некоторые системные функции/переменные - предваряются двумя символами '@'.Ну и что? И переменные даже не некоторые, а все. И что это меняет? А здесь их - целых три! Вот именно! Именно! Ибо такой последовательности в T-SQL нет и это нам гарантирует однозначность.Дополнительное использование еще двух '@' (если только это не описка ТС) несет какой-то иной смысл нежели просто передача параметра!Еще раз для плохо знающих T-SQL: к передаче параметров этот символ не имеет никакого отношения. Так что, без парсера - ну никак....Так что если отбросить фантазии и прочие измышлизмы, то никаким парсером и не пахнет.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38077169
Sergey SizovА Вас не смущает тот факт, что символ @ к передаче параметров не имеет никакого отношения? Вас не смущает тот факт, что этот символ есть обязательный в T-SQL преффикс переменной и не более того?
Нет. У каждого языка свои "тараканы" в голове

Sergey Sizov А здесь их - целых три! Вот именно! Именно! Ибо такой последовательности в T-SQL нет и это нам гарантирует однозначность.
...в данной(!!!) конкретной(!!!) сгенерированной "процедуре" ! Или Вы знаете о какой системе идет речь и уверены, что она всегда Sergey Sizovнам гарантирует однозначность. именно таким способом?

А если в другой сгенерированной "процедуре" такой "однозначности" не будет?
Если там будут "обычные" переменные и параметры (те, которые с одним '@')... Для определенности, пусть у "процедуры" будет один входной параметр, и пара локальных переменных. Что тогда будете делать? Ведь "универсальный" StrTran(memo,'@', '?') без знания контекста использования '@' уже не "покатит".


Sergey SizovЕще раз для плохо знающих T-SQL .... если отбросить фантазии и прочие измышлизмы, то никаким парсером и не пахнет.
Как говорилось в одном анекдоте про водителя-дальтоника: Я хоть и дальтоник, но ведь не идиот... Если Вы мне скажете, как Вы будете StrTran'ом обрабатывать ситуацию, приведенную абзацем выше в этом посте, то я признаю свое поражение и тихо уйду.... Можно даже "по-английски"... не буду продолжать флейм по данной теме...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38077230
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Станислав С...кийSergey SizovА Вас не смущает тот факт, что символ @ к передаче параметров не имеет никакого отношения? Вас не смущает тот факт, что этот символ есть обязательный в T-SQL преффикс переменной и не более того?
Нет. У каждого языка свои "тараканы" в головеТак речь не о языке, а о Ваших предположениях в связи с языком.
Sergey Sizovпропущено...
Вот именно! Именно! Ибо такой последовательности в T-SQL нет и это нам гарантирует однозначность.
...в данной(!!!) конкретной(!!!) сгенерированной "процедуре" ! Или Вы знаете о какой системе идет речь и уверены, что она всегда Sergey Sizovнам гарантирует однозначность. именно таким способом?Весь топик речь шла о MS SQL. В нем только один даилект SQL'я - T-SQL. В котором последовательность @@@ не зарезервирована.

А если в другой сгенерированной "процедуре" такой "однозначности" не будет?
Если там будут "обычные" переменные и параметры (те, которые с одним '@')... Для определенности, пусть у "процедуры" будет один входной параметр, и пара локальных переменных. Что тогда будете делать? Ведь "универсальный" StrTran(memo,'@', '?') без знания контекста использования '@' уже не "покатит".Еще раз для плохо думающих: знак @ не есть признак параметра. Одиночный знак есть преффикс переменной, а двойной - преффикс некоторых встроенных функций, еще со времен Sybase. И речь идет о конкретной системе. И ни о какой универсальности нигде никакой речи не было. И речь была именно о затроенни символа, я нигде не предлагал приписываемый мне Вами вариант замены одиночного символа. Даже если бы я его и прелагал бы, то уж всяко не так. :) Для замены одиночного символа есть другая более быстрая функция. :)

Sergey SizovЕще раз для плохо знающих T-SQL .... если отбросить фантазии и прочие измышлизмы, то никаким парсером и не пахнет.
Как говорилось в одном анекдоте про водителя-дальтоника: Я хоть и дальтоник, но ведь не идиот... Если Вы мне скажете, как Вы будете StrTran'ом обрабатывать ситуацию, приведенную абзацем выше в этом посте, то я признаю свое поражение и тихо уйду.... Можно даже "по-английски"... не буду продолжать флейм по данной теме...Я ничего не буду делать. Ибо мне это не надо. Еще раз: речь идет про конкретную систему и способ предложен для конкретной системы и конкретной ситуации.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38077311
Sergey SizovЯ ничего не буду делать. Ибо мне это не надо. Еще раз: речь идет про конкретную систему и способ предложен для конкретной системы и конкретной ситуации.
Вы еще подеритесь, горячие эстонские парни...(с)

Я не понял, что речь шла о конкретной ситуации... Думал, что Вы предлагаете универсальное решение - вот и пытался доказать Вам, что оно не является таковым...
В любом случае примите мои искренние извинения...
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38077428
makar12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Viart,
НЕ помню синтаксиса T/SQL но в MySQL делаю так:

Если m.sqlval = Строка из мемо-поля то
формируем тело ХП:

m.sqlval="CREATE DEFINER=`admin`@`localhost` PROCEDURE `NewProcedure`(`Dt` Date) BEGIN "+;
m.sqlval+;
" END;"

далее:
mmm = SQLEXEC(bdConn, "DROP PROCEDURE IF EXISTS `NewProcedure`;")
mmm = SQLEXEC(bdConn, m.sqlval)
mmm = SQLEXEC(bdConn, "CALL `NewProcedure`(<тут параметр>);",m.cursor) && курсоров может образоваться несколько ...


как то так ...
У меня работает.
...
Рейтинг: 0 / 0
запуск запроса в sql базе
    #38081682
Viart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем кто попытался помочь.
Проблема решена путем внедрения в базу SQL хранимой процедуры и вызова ее из фоксы.
тему можно закрывать.
...
Рейтинг: 0 / 0
39 сообщений из 39, показаны все 2 страниц
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / запуск запроса в sql базе
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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