Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / разбить dbf файл на несколько / 9 сообщений из 9, страница 1 из 1
02.08.2009, 16:28
    #36122100
ralero
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
Подскажите, пожалуйста,каким образом с помощью Visual FoxPro 9.0 разбить dbf файл на несколько dbf файлов. Например, в dbf файле 300 000 строк, мне нужно сохранить первые 60 000 строк в новый dbf файл
...
Рейтинг: 0 / 0
02.08.2009, 16:47
    #36122106
Burn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
GO top
COPY TO new_table NEXT 60000

А ваще - курите мануалы они рулез
...
Рейтинг: 0 / 0
02.08.2009, 16:54
    #36122109
ralero
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
BurnGO top
COPY TO new_table NEXT 60000

А ваще - курите мануалы они рулез

спасибо большое! я просто не работаю в foxpro. Извините, вы не могли бы еще сказать где нужно исполнить этот запрос. я не могу найти к сожаленью
...
Рейтинг: 0 / 0
02.08.2009, 17:03
    #36122111
ralero
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
raleroBurnGO top
COPY TO new_table NEXT 60000

А ваще - курите мануалы они рулез

спасибо большое! я просто не работаю в foxpro. Извините, вы не могли бы еще сказать где нужно исполнить этот запрос. я не могу найти к сожаленью

Спасибо большое! в Command window.

А если нужно выбрать следующие 60000 тысяч записей? ( т.е. с 60001 по 120 000)
...
Рейтинг: 0 / 0
02.08.2009, 20:35
    #36122210
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
ralero,
ну организуйте цикл
Код: plaintext
1.
2.
3.
go top
for ii= 1  to (reccount() div  60000 )+ 1 
  COPY TO new_table_name(ii) NEXT  60000 
endfor
Только не помню, не надо ли будет вручную переходить (командой skip 60000) на (60000i+1)-ю запись после копирования.
...
Рейтинг: 0 / 0
02.08.2009, 23:19
    #36122320
Sergey Ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
Надо бы советовать что-то посовременний, типа SELECT INTO...
...
Рейтинг: 0 / 0
03.08.2009, 21:01
    #36124152
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
Sergey ChНадо бы советовать что-то посовременний, типа SELECT INTO...
Просветите, как с помощью sql-select в фоксе брать по N записей по порядку (по условию ТС, в общем). Не писать же where between(recno(),ii*N+1,(ii+1)*N) - это КМК куда тормознее будет.
ЗЫ. в copy to можно сразу указать кодировку, формат и т.п.
...
Рейтинг: 0 / 0
04.08.2009, 16:40
    #36126070
Tohan_ORA
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
Код: plaintext
1.
2.
3.
4.
v_cnt= 60000 
select 'MyTable'
for i= 1  to CEILING(reccount('MyTable')/v_cnt)
	copy to 't_'+LTRIM(str(i)) for between(recno(),(i- 1 )*v_cnt+ 1 ,i*v_cnt)
endfor
...
Рейтинг: 0 / 0
04.08.2009, 16:59
    #36126129
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
разбить dbf файл на несколько
Tohan_ORA,
TanglirНе писать же where between(recno(),ii*N+1,(ii+1)*N) - это КМК куда тормознее будет. Неужели так быстрее будет? Ведь придётся всю таблицу сканить на предмет битвина, а NEXT N возьмёт записей по порядку сколько надо и остановится.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / разбить dbf файл на несколько / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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