powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / добавить идентификатор и скопировать записи
13 сообщений из 13, страница 1 из 1
добавить идентификатор и скопировать записи
    #38302808
Привет! Есть курсор shtory, в него выбираются несколько записей. Как добавить в этот курсор новое поле и занести в это поле числовой идентификатор? Чтобы поле добавилось ко всем занесенным записям? Идентификатор должен при следующем запуске программы быть другим. Например, если в первый занести идентификатор 1, то в следующий раз занести 2 для выбранных в курсор записей
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302828
Добавлять поле не нужно уже, это сделал. А как сделать вот это?
занести в это поле числовой идентификатор? Чтобы поле добавилось ко всем занесенным записям? Идентификатор должен при следующем запуске программы быть другим. Например, если в первый занести идентификатор 1, то в следующий раз занести 2 для выбранных в курсор записей
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302838
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
веб_программистДобавлять поле не нужно уже, это сделал. А как сделать вот это?
занести в это поле числовой идентификатор? Чтобы поле добавилось ко всем занесенным записям? Идентификатор должен при следующем запуске программы быть другим. Например, если в первый занести идентификатор 1, то в следующий раз занести 2 для выбранных в курсор записей

Поиск по NewID
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302884
Делаю так, но не работает..

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT MAX(id) as max_id FROM table1 INTO CURSOR c1 //// Потому что мне нужно потом курсор выводить в table1

SELECT shtory
DO WHILE.NOT.EOF()
SELECT table1
APPEND BLANK
    replace ser with shtory.cena
    IF id<>1
    replace id with 1
    ELSE 
    replace id with c1.max_id+1
    ENDIF 
SELECT shtory
SKIP
ENDDO



Все время в поле id заносится 1. Почему так
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302888
ой не ser там а ncena

Код: sql
1.
replace ncena with shtory.cena
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302913
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
веб_программистой не ser там а ncena

Код: sql
1.
replace ncena with shtory.cena



Приведи исходные данные и что должно получиться.
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302930
PaulWist, Курсор shtory в котором разные поля они не нужны и поле id куда надо заносить идентификатор.
есть таблица table1 куда потом будут выгружены данные из курсора shtory. В таблице table1 поле id должно быть одинаковым для тех записей, которые в данный момент выгружаются в таблицу.

Т.е. в курсоре всем записям в поле id нужно задать такой id, который на 1 больше чем в таблице table1 и выгрузить эти данные в таблицу.
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38302941
Думал сделать так:

SELECT MAX(id)+1 as max_id FROM table1 INTO CURSOR c1

В курсор c1 выбрать max(id)+1
затем через scatter занести в переменную памяти или куда она заносится // никогда не работал с scatter/GATHER

и потом в цикле сделать rapcale

но не умею работать с scatter/GATHER
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38303014
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
веб_программистТ.е. в курсоре всем записям в поле id нужно задать такой id, который на 1 больше чем в таблице table1 и выгрузить эти данные в таблицу.

Код: sql
1.
2.
3.
4.
5.
update shtory set id = id + 1

либо 

replace all id with id + 1 in shtory
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38303075
PaulWist, Спасибо, я примерно так и сделал. У меня вопрос такой. Есть курсор уже готовый со всеми данными, остается из него данные выгрузить в таблицу table1 но не получается. В таблице записей не оказывается вообще: Подкорректируйте мой код

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT shtory
DO WHILE.NOT.EOF()
SELECT table1
    APPEND BLANK 
    replace ncena with shtory.cena
    replace id with shtory.id
SELECT shtory
SKIP
ENDDO
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38303082
Кажись заработало go top забыл поставить..
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38303143
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
веб_программистPaulWist, Спасибо, я примерно так и сделал. У меня вопрос такой. Есть курсор уже готовый со всеми данными, остается из него данные выгрузить в таблицу table1 но не получается. В таблице записей не оказывается вообще: Подкорректируйте мой код

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT shtory
DO WHILE.NOT.EOF()
SELECT table1
    APPEND BLANK 
    replace ncena with shtory.cena
    replace id with shtory.id
SELECT shtory
SKIP
ENDDO



Можешь заменить одной строчкой

Код: sql
1.
insert into table1 (id, cena) select id, cena from shtory
...
Рейтинг: 0 / 0
добавить идентификатор и скопировать записи
    #38303585
12345зайчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
веб_программистКажись заработало go top забыл поставить..
лучшеб не заработало

может отца русской демократии спасет такое?

Create cursor tt (id i autoinc, vv c(5), kk c(5))
brow
Append Blank
brow
Append Blank
Append Blank
brow
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / добавить идентификатор и скопировать записи
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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