Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

FoxPro: команда append

Добрый день!
Может поможет мне кто-нибудь разораться с такой проблемой:

Имеется код:
"......
use q110_sort EXCLUSIVE in 0
select q110_sort
zap
append from qq10
append from sw_z1
....."

По логике этот кусок должен все данные из таблиц qq10 и sw_z1 добавить к данным
в таблице q110_sort. Но не получается добавлять.
Имеется один моментик: структура всех трёх таблиц разная. Может в этом проблема?
В имеющихся книжках не могу найти описание команды append

C уважением, Бурляев Вячеслав
Номер выпуска : 2417
Возраст листа : 163 (дней)
Количество подписчиков : 381
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/95805
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru

http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Wed, 3 Mar 2004 19:41:31 +0500 (#95805)

 

Ответы:

-----Original MessageFrom: "Бурляев Вячеслав" <burlya***@u*****.ru>
To: "comp.soft.prog.prog" <nick***@i*****.ru> (1735245)

Описание команды append:

APPEND

Ввести дополнительные записи в полноэкранном режиме

Формат: append

Все форматы APPEND позволяют ввести дополнительные записи в конец файла базы
данных, находящегося в текущий момент в области USE.
Этот формат команды выполняет процедуру полноэкранного редактирования, в процессе
которой к активной базе данных может быть добавлено любое количество записей.
Если отсутствуют активные команды SET FORMAT, подсказка пользователю о вводе
в каждое поле каждой записи производится с использованием умалчиваемой конфигурации
экрана.
Если имеется активная команда SET FORMAT, в процессе ввода информации используется
конфигурация экрана, указанная в FORMAT.

Смотри также: SET CARRY, SET FORMAT TO

APPEND BLANK

Ввести пустую запись в базу данных.

Формат: APPEND BLANK

APPEND BLANK вводит в конец базы данных запись, содержащую только пробелы.

APPEND FROM

Ввести из файла в активную базу данных.

Формат: APPEND FROM <файл>
[FIELDS<список_полей>]
[FOR<логич_выраж>]
[WHILE<логич_выраж>]
[TYPE<тип_файла>]

Эта форма команды APPEND позволяет взять данные из файла базы данных FoxBASE+
<файл> и ввести записи, созданные из этих данных, в конец используемого в текущий
момент файла базы данных.

FIELDS<список_полей>
APPEND FROM поддерживает необязательный список полей. При этом возможно обеспечить
доступ для добавления в базу только указанных полей.

FOR<логич_выраж>
Если вводится параметр FOR<логич_выраж>, будет введена запись для каждой записи
в файле FROM <файл>, для которой выполняется условие, указанное выражением <выраж>,
до тех пор, пока не будет исчерпан файл FROM <файл> (т.е. пока не будет достигнута
метка конца файла). Если параметр FOR <выраж> не используется, новые записи вводятся
до тех пор, пока не будет завершен просмотр файла FROM <файл>. Параметр FOR <выраж>
следует использовать для полей, которые имеются в обоих файлах.

TYPE<тип_файла>
Файл в выражении FROM <файл> не обязательно должен быть типа (.DBF). Для указания
других типов файлов может быть использована конструкция TYPE<тип_файла>. Ниже
приведено описание имеющихся типов файлов:

DELIMITED [WITH <ограничитель>/BLANK] файл с ограничителями. Это файл ASCII,
в котором каждая запись заканчивается символами возврата каретки и перевода строки.

Многие языки программирования, как например, БЕЙСИК, ФОРТРАН и т.д. могут создавать
файлы, содержащие как числовые поля, так и символические данные. Числовые поля,
представленные в символическом виде, могут быть разделены запятыми и перемежаться
символическими данными, заключенными в одиночные или двойные кавычки и разделенные
запятыми. Например:
555 , 9999999, TELEPHONE
Эта форма команды APPEND может принимать данные в формате с ограничителями и
создавать из полученной информации базу данных FoxBASE+. Ограничителем по умолчанию
являются двойные кавычки, однако для работы с файлами, содержащими поля, разделенные
одиночными пробелами, может быть использован параметр DELIMITED WITH BLANK (ограничено
пробелами). При помощи параметра DELIMITED WITH <ограничитель> может быть указан
другой тип ограничителя для использования со строками символов.

SDF файл в формате системных данных. Это текстовый файл ASCII. Каждая запись
в файле является записью фиксированной длины и заканчивается символами возврата
каретки и перевода строки.

Для файлов в форматах SDF и DELIMITED подразумевается расширение имени файла
.TXT.

Надеюсь это Вам поможет.
С почтением,
Намик К. nick***@i*****.ru

Номер выпуска : 2465
Возраст листа : 166 (дней)
Количество подписчиков : 381
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/97651
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru

http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Sat, 06 Mar 2004 07:13:59 +0300 (#97651)

 

Hi, Бурляев Вячеслав
По логике этот кусок должен все данные из таблиц qq10 и sw_z1 добавить к данным

Проблема как раз в этом. Поля должны иметь одинаковые имена и типы. Во
всяком случае в Clipper имено так.

Ответить   Саша Tue, 9 Mar 2004 16:22:50 +0400 (#99856)

 

Здравствуйте, Бурляев.

Вы писали 3 марта 2004 г., 19:41:31:

данным

Разумеется.
ВСЕ таблицы должны быть приведены к единой структуре.

Примерно так

USE Name_File IN 30
SELECT 30
COPY STRUCTURE EXTENDED TO temp
USE temp IN 26
APPEND BLANK
CREATE New_Name_File FROM temp

Вот так из твоего файла получается пустой файл с такой же структурой.
Структура твоего файла лежит в temp.
Он состоит из 4 полей:
1- имя поля
2- тип поля(дата,число,логика,символ)
3- длина поля
4- число знаков после запятой

Как ты правильно догадался, этот temp можно редактировать, получая
любую, но нужную структуру.
Также желательно имена и типы полей тоже состыковать.

Ответить   Wed, 10 Mar 2004 19:29:06 +0500 (#100975)