powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите разбить файл dbf
13 сообщений из 13, страница 1 из 1
Помогите разбить файл dbf
    #37093033
shark776
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно разбить файл баз данных из 5000 записей на 10 по 500, а затем склеить их в 1.
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093072
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shark776,
и какие проблемы? Что не получается? Разделить? Склеить? Кстати, если между разделить и склеить ничегоне делается, то нафига вообще это нужно?
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093165
shark776
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
файл большого объема 3500 записей по 82 полям
делаю модификацию структуры через массив. Версия фокса 7. При значении deminsion (900,82) выдает ошибку, что слишком много значений.

DIMENSION mine(999,82)

COPY TO ARRAY mine

COPY STRUCTURE EXTENDED TO temp
USE temp
GO 1
REPLACE field_name WITH "numedint"
REPLACE field_type WITH "c"
REPLACE field_len WITH 10
GO 2
REPLACE field_name WITH "ln"
REPLACE field_type WITH "c"
REPLACE field_len WITH 100

GO 3
REPLACE field_name WITH "nm"
REPLACE field_type WITH "c"
REPLACE field_len WITH 100

GO 4
REPLACE field_name WITH "ftn"
REPLACE field_type WITH "c"
REPLACE field_len WITH 100


CREATE backup from temp
DO Cpzero WITH 'backup.DBF',866
APPEND FROM ARRAY mine

Необходимо разбить исходный файл на части, произвести модификацию структуры и собрать назад.
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093304
Koryuu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему нельзя модифицировать таблицу через alter table? (=_=)?
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093313
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shark776файл большого объема 3500 записей по 82 полям. делаю модификацию структуры через массив
Тут массив не нужен.
Так сделай:
Код: plaintext
select f1 as numedint, f2 as ln ... from MyTable into dbf backup
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093702
shark776
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KoryuuА почему нельзя модифицировать таблицу через alter table? (=_=)?

А по конкретнее написать можно.

Пример: tin n(10.2) исходное поле в n1 таблице. Необходимо чтобы оно стало tin_1 n(13.2).

как правильно без синтаксических ошибок написать?
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093756
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shark776KoryuuА почему нельзя модифицировать таблицу через alter table? (=_=)?

А по конкретнее написать можно.

Пример: tin n(10.2) исходное поле в n1 таблице. Необходимо чтобы оно стало tin_1 n(13.2).

как правильно без синтаксических ошибок написать?
Хэлп на alter table почитай. Там примеры есть.
Код: plaintext
1.
2.
alter table n1 add column tin_1 n( 13 . 2 )
update n1 set tin_1 = tin
alter table n1 drop column tin
только медленно будет работать, т.к. на каждую колонку файл дважды перезаписываться будет. через SELECT гораздо быстрее.
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37093792
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T Хэлп на alter table почитай. Там примеры есть.
Код: plaintext
1.
2.
alter table n1 add column tin_1 n( 13 . 2 )
update n1 set tin_1 = tin
alter table n1 drop column tin
только медленно будет работать, т.к. на каждую колонку файл дважды перезаписываться будет. через SELECT гораздо быстрее.Естественно это будет медленно. Нафига создавать новую колонку? Изменение уже существующей уже отменили?
Код: plaintext
alter table n1 alter column tin_1 n( 13 . 2 )
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37094455
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey SizovНафига создавать новую колонку? Изменение уже существующей уже отменили?

А кто спрашивал про изменение? Ему еще имя поля надо поменять.
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37094595
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TSergey SizovНафига создавать новую колонку? Изменение уже существующей уже отменили?

А кто спрашивал про изменение? Ему еще имя поля надо поменять.А нужно опять же для решения таки по своему разумению через создание нового поля, перекачки туда данных, удаление старого поля и переименования нового поля в старое. Хотя сама задача, почему-то мне кажется, состоит всего лишь в изменении размерности поля.
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37112630
WEBOG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а смысл в этом в чем?
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37112807
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shark776,
Глубоко я задумался, а это для чего ? Сначала разбить 10 по 500 записей, и потом тут же слить опять в единое. Странно это как-то... Ежели надо структуру изменить, то для чего разбивать на 10х500 ?
...
Рейтинг: 0 / 0
Помогите разбить файл dbf
    #37112977
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rewareshark776,
Глубоко я задумался, а это для чего ? Сначала разбить 10 по 500 записей, и потом тут же слить опять в единое. Странно это как-то... Ежели надо структуру изменить, то для чего разбивать на 10х500 ?
Чего странного, он с помощью COPY TO ARRAY пытался структуру менять, а массивы-то не бесконечные.
У фокса по умолчанию может быть 16384 переменных, можно увеличить до 65000 в CONFIG.FPW.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите разбить файл dbf
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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