powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Добавление записи
12 сообщений из 12, страница 1 из 1
Добавление записи
    #32463971
_Mikle_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно ли добавить (вставить) пустую строку между двух, например, между 5-й и 6-й ??

Заранее спасибо.
...
Рейтинг: 0 / 0
Добавление записи
    #32464002
SSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SSV
Гость
Вставить с помощью insert или append можно только в конец таблицы, но отобразить новую строку между 5 и 6-ой можно с помощью использования определенного индекса.
...
Рейтинг: 0 / 0
Добавление записи
    #32464017
_Mikle_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это все понятно, а программно и сразу нельзя ?
...
Рейтинг: 0 / 0
Добавление записи
    #32464040
Фотография Redrik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что - INSERT [BEFORE] BLANK уже не работает?
...
Рейтинг: 0 / 0
Добавление записи
    #32464081
_Mikle_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То, что надо. Пробовал
Код: plaintext
1.
INSERT [BEFORE] BLANK
INSERT [AFTER] BLANK

что-то работают одинаково - вставляют пустышку после той записи, на которой стою...
А где можно почитать про неё ? В MSDN чего-то не нашел.
...
Рейтинг: 0 / 0
Добавление записи
    #32464414
bdv9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VFP6 SP5
Работает правильно.
Код: plaintext
1.
2.
MSDN
INSERT Command
Included for backward compatibility. Use APPEND or INSERT - SQL instead

Одно "но" - файл должен быть открыт монопольно.
...
Рейтинг: 0 / 0
Добавление записи
    #32464428
Cyv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Плохо искал.
MSDN говорит вот что :
Included for backward compatibility. Use APPEND or INSERT - SQL instead.

А в русском хэлпе к версии 3.0 написано вот что :

Вставляет в текущую таблицу новую запись. Данная команда включена для совместимости с предыдущими версиями. Пользуйтесь вместо нее командами APPEND или INSERT - SQL.

Синтаксис

INSERT [BEFORE] [BLANK]

Параметры

BEFORE

Вставляет новую запись в текущую таблицу непосредственно перед текущей записью. После этого новая запись отображается для редактирования. Можно добавлять новые записи из окна редактирования.

BLANK

Вставляет новую пустую запись непосредственно после текущей записи. Окно редактирования не отображается.

Комментарии

Если команда INSERT выдана без предложений BEFORE и BLANK, новая запись добавляется, а затем отображается для редактирования. Новые записи можно добавлять из окна редактирования.
В Visual FoxPro командой INSERT нельзя пользоваться в таблице базы данных, для которой включена буферизация таблицы или буферизация строк, а также в таблице с правилами ссылочной целостности, такими как триггеры, первичные ключи или ключи-кандидаты и т.д. Подробнее о буферизации таблиц и строк см. CURSORSETPROP( ), а о ссылочной целостности ѕ главу 7 "Работа с таблицами" Руководства разработчика.
Если установка SET CARRY имеет значение ON, в новую запись будут автоматически скопированы данные из текущей записи.

Если файл индексирован, команда INSERT работает как APPEND.

Замечание Командой INSERT не рекомендуется пользоваться в больших таблицах, поскольку вставка записи ближе к началу таблицы будет приводить к переписыванию почти всех записей. На это может уйти очень много времени. Пользуйтесь командой INSERT - SQL.
...
Рейтинг: 0 / 0
Добавление записи
    #32464546
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Короче говоря, даже если INSERT [BEFORE] BLANK в используемой версии фокса работает, лучше этот изврат сразу забыть как вещь неправильную и однозначно вредную.
...
Рейтинг: 0 / 0
Добавление записи
    #32464642
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работать-то он будет на любой версии FoxPro. Совместимость со старыми версиями - это основа политики MicroSoft. Другое дело как и при каких условиях?

Например, эта команда не сработает на таблицах, которые имеют триггер.
...
Рейтинг: 0 / 0
Добавление записи
    #32464652
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понимаю, в поздних версиях эта команда (insert [before] blank) на самом деле вставляет данные как простая append blank (т.е. записи добавляются в конец таблицы).
...
Рейтинг: 0 / 0
Добавление записи
    #32464674
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет. Команда работает также как и раньше.

Я же говорю - это основа политики MicroSoft - совместимость со старыми версиями. ВСЕ команды, которые существовали в более ранних версих продолжают работать и в более поздних.

Проблема в том, что изменяется идеология языка программирования, появляются новые команды и функции.

Просто взять и выбросить старую команду или изменить идеологию ее работы MicroSoft не может. Это нарушит их же собственный принцип совместимости. Однако MicroSoft может затруднить ее использование, ограничив большим количеством условий и "спрятав" ее описание.

Т.е. получается, что старые команды по прежнему работают, но для того, чтобы они работали нормально и без глюков необходимо, чтобы выполнялось огромное количество условий. Каких именно? "Тайна сия велика есть". Я так думаю, что MicroSoft сознательно их не оговаривает, чтобы дополнительно затруднить их использование. Да и Help по этим командам найти затруднительно.
...
Рейтинг: 0 / 0
Добавление записи
    #32464832
_Mikle_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В MSDN я это пояснение и раньше находил.
Спасибо Cyv - то, что надо.
Прога довольно простая, так что INSERT [BEFORE] BLANK вполне подойдет. И SET CARRY ON тоже пригодится.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Добавление записи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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