powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как добавить еще записей полученный через Select кусор
14 сообщений из 14, страница 1 из 1
как добавить еще записей полученный через Select кусор
    #32939230
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я сделал выборку записей в кусор через Select. А как мне теперь туда еще выборку добавить?
Ну курсор, понятно, надо сделать Read/Write а дальше то чего?

ЗЫ тока эта, мне не за одну команду надо, тк оно в цикле будет несколько таких команд выполнять, просто условие меняется для выборки, но в итоге надо получить выборку по всем условиям цикла в одной таблице/курсоре.

напр. мне надо для отчета из базы сделать выборку за такое количество НЕПОДРЯД идущих месяцев, как укажет юзверь. (типа 1, 5-7, 10)
я иду циклом от а=1 до 12, и если а входит в рамки, указанные юзверем, то добавляется выборка, не - идем дальше.
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939268
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimension ara(12)
store 0 to ara
ara(1)=4
ara(2)=8
create cursor qq1 (f1....)
for i=1 to 12
if ascan('ara',i)#0
StrVar='select f1,... from t'+alltrim(str(i))+' into curs qq2'
&StrVar
select qq1
appe from dbf('qq2')
endif
endfor
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939308
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну можно так поизощряться
Код: plaintext
1.
lcMonth="1,3,5,6,7,12"
select ... from ... where at(","+TRANSFORM(MONTH(DATE()))+",",","+lcMonth+",")> 0 
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939346
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
appe from dbf('qq2')

так че получается? в курсор можно из другого курсора добавить по append?

а чего разве сразу из базы нельзя?
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939371
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AleksMedНу можно так поизощряться
Код: plaintext
1.
lcMonth="1,3,5,6,7,12"
select ... from ... where at(","+TRANSFORM(MONTH(DATE()))+",",","+lcMonth+",")> 0 

мне не подходит, тк я сначала должен определить область добавки, промежуток записей (тут то я и применяю поиск записей по нужному месяцу month(date)=nRozKvMonth)и потом я уже делаю
Код: plaintext
select * from RzoKv into curRozKv where recno()>=nBegRec and recno()<=nEndRec
а таких селектов мне надо сделать несколько и потом все объеденить в один курсор для печати.
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939388
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗЫ это такая база, в которой идентификатор нужной мне области есть только в начале и в конце такой области записей. соответственно я сначала нахожу номер первой записи, затем последней, и тогад уже могу селект замутить.
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939402
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это было сказано касательно вопроса выборки по не подряд идущим месяцам в обном селекте с указанием необходимых месяцев в переменной.
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32939549
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а чего разве сразу из базы нельзя?
в моем примере базы разные , а если база одна то в чем проблемма простой селект и все
приблезительно как алекс сказал тока у него с функциями закручено
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32942362
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi CTAC-KO!

Можно по SELECT большой_запрос + APPEND FROM DBF("твой_добавляемый_запрос")
Можно по INSERT INTO большой_запрос (его поля) SELECT
собственно_маленький_добавляемый_запрос - если фокс посвежее будет.

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32943468
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так я просто чего разволновался-то?

В хелпах не сказано что append может добавлять записи из одного курсора в другой курсор, курсор же не DBF, а мне именно и требуется из курсора в курсор скидывать.

ну попробую аппендом, ладно.

тока получается надо создать два одинаковых курсора, один пустой, в нем будет все накапливаться, а второй постоянно изменяться и из него данные будут добаляться в первый.
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32943487
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что вы так волнируетесь
идея уже давно прописана выше
и ваще чаще пробуйте
а в хелпах особенно старых не всегда все пишут увы
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32944378
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leafчто вы так волнируетесь

дык не зря я волнируюсь-то
APPEND FROM DBF - такого ваще нету в 8
есть APPEND FROM FileName
а нету у меня FileName, я же выборку сделал селектом в курсор!!!

причем в первом из курсоров постоянно должны добавляться значения из второго курсора

А как с курсорами проводить операцию типа а=а+б
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32944447
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
* Первый курсор
CREATE CURSOR cur1 (test I)
INSERT INTO cur1 (test) VALUES ( 1 )
* Второй курсор
CREATE CURSOR cur2 (test I)
INSERT INTO cur2 (test) VALUES ( 2 )
* Добавляю содержимое второго курсора в первый
SELECT cur1
APPEND FROM (DBF("cur2"))
...
Рейтинг: 0 / 0
как добавить еще записей полученный через Select кусор
    #32944523
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ага, дошло...
работает!
спасибо!

это делается так: надо узнать в какое файло скинут фоксой курсор и отедова сделать аппенд. о!. А я ж-то думал без использования файла курсора, набадяжил такой селект - страшно помотреть с использованием Union
типа
Код: plaintext
1.
select * from cur1 into cursor cur1;
      union select _тут все про селект для cur2_ 
тока у меня вышло так, что он добавлял записи почти как надо, только выполнялось как бы инсерт перед последней строчкой
я выполнил 3 таких селекта, так в конце курсора получились три записи, первая - последняя запись из третего запроса, и вторая - последняя запись из второго запроса и третья - последняя из первого запроса. а че так? почему инсерт получился вместо аппенда?

ща попробую изобразить:
запрос1
1
1
1
1

запрос2
1
1
1
2
2
2
1

запрос3

1
1
1
2
2
3
3
3
2
1
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как добавить еще записей полученный через Select кусор
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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