Форум программистов, компьютерный форум, киберфорум
Visual FoxPro
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
3 / 3 / 1
Регистрация: 05.07.2013
Сообщений: 39

Удалить запись

24.07.2013, 19:48. Показов 1941. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Реализую удаление записей из таблицы.У меня есть две таблицы client и product.
Сначала помечал на удаление и удалял по нажатию одной кнопки. Вроде работало, но чуть позже начал ругаться при PACK на то, что таблица открыта не эксклюзивно. Переделал, теперь помечаю запись на удаление в одной форме, PACK-ую при выходе. Но не работает, говорит псевдоним "product" не найден.
SQL
1
2
3
4
5
6
7
8
9
USE IN client
  USE client IN 0 EXCLUSIVE 
  SELECT client
  PACK  
 
USE IN product &&В этом месте ругается
  USE product IN 0 EXCLUSIVE 
  SELECT product
  PACK
Кстати, заметил что слово "product" в коде выделяется синим, так же как и служебные слова(типа SELECT, USE и тп)
В чем может быть проблема?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.07.2013, 19:48
Ответы с готовыми решениями:

Как можно удалить запись из временной таблицы?
подскажите как можно удалить запись из временной таблицы? я сначала создал таблицу потом при ее заполнении получаю список данных, удаляю...

При удалении записи в дочерней таблице она пытается удалить запись в родительской.
MSSQL 7.0. Две таблицы - родительская и дочерняя. Естественно стоят ограничения PK и FK(внешний ключ). Если в дочерней таблице удаляю...

Четыре кнопки на форме: добавить запись, удалить запись, закрыть, найти запись
Private Sub КнопкаДобавитьЗапись_Click() On Error GoTo Err_КнопкаДобавитьЗапись_Click DoCmd.GoToRecord , , acNewRec ...

5
187 / 180 / 29
Регистрация: 26.05.2011
Сообщений: 856
25.07.2013, 06:48
Первое: желательно избегать того, чтобы фокс вам подсвечивал имена таблиц, переменных и т.д. Для выхода можно пользоваться таким методом: я в начале названия таблицы упоминаю вид, (например s_product справочник продуктов)
Второе: зачем вы каждый раз используете команду pack? Это ресурсоемкая команда, она создает таблицу на основе вашей таблицы, старую удаляет, новую переименовывает в ваше название. Представьте что будет, когда у вас будет порядка 10 000 записей в таблице, упаковка займет приличное время. Установите set deleted on в начале программы, и ваши записи, помеченные на удаление, никому не помешают. А упаковку проводите в качестве профилактического мероприятия.
1
3 / 3 / 1
Регистрация: 05.07.2013
Сообщений: 39
25.07.2013, 10:27  [ТС]
Цитата Сообщение от sks1904 Посмотреть сообщение
Первое: желательно избегать того, чтобы фокс вам подсвечивал имена таблиц, переменных и т.д. Для выхода можно пользоваться таким методом: я в начале названия таблицы упоминаю вид, (например s_product справочник продуктов)
Второе: зачем вы каждый раз используете команду pack? Это ресурсоемкая команда, она создает таблицу на основе вашей таблицы, старую удаляет, новую переименовывает в ваше название. Представьте что будет, когда у вас будет порядка 10 000 записей в таблице, упаковка займет приличное время. Установите set deleted on в начале программы, и ваши записи, помеченные на удаление, никому не помешают. А упаковку проводите в качестве профилактического мероприятия.
Попробовал поменять название таблицы product, теперь в других местах ругается, например при APPEND BLANK IN s_product. Пишет все так же - псевдоним не найден.
А пакую я при выходе из пограммы, так что думаю это самое разумное место)
0
187 / 180 / 29
Регистрация: 26.05.2011
Сообщений: 856
25.07.2013, 10:36
перед аппендом поставьте селект с_продукт

Добавлено через 1 минуту
также вместо аппенд рекомендую использовать инсерт (insert)
1
3 / 3 / 1
Регистрация: 05.07.2013
Сообщений: 39
25.07.2013, 12:16  [ТС]
Цитата Сообщение от sks1904 Посмотреть сообщение
перед аппендом поставьте селект с_продукт

Добавлено через 1 минуту
также вместо аппенд рекомендую использовать инсерт (insert)
Все равно, даже при SELECT s_product, не может найти псевдоним. Пробовал USE s_product, но потом невозможно работать с client

UPD: Все заработало

Добавлено через 11 минут
В фоксе все работает, однако когда создаю exe-шник не может найти псевдоним s_product
UPD: А теперь и в фоксе не работает((
0
187 / 180 / 29
Регистрация: 26.05.2011
Сообщений: 856
25.07.2013, 12:44
значит надо через отладчик искать проблему, подозреваю, что у вас где-то таблицы закрываются неявно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.07.2013, 12:44
Помогаю со студенческими работами здесь

Поменять любую запись местами с последней и удалить последнюю запись.
Помогите пожалуйста! Мне для программы, которая использует records (записи), нужно написать процедуру, которая меняет любую запись...

Составить программу с помощью которой можно добавить запись, удалить запись и распечатать дешевое издание.
program _file_LB7_Zeleniuk; type zurnal=record name:string; tiraz:integer; vartist:integer; end; var f:file of zurnal; ...

Не могу удалить свою учетную запись. Пункта "переключиться на локальную учетную запись" нет
Добрый день! На свое рабочем компьютере мне нужно было загрузить приложение из маркета, и для этого я зашел в свою учетную запись. После...

Удалить запись из БД
Удалить запись из БД, если дата в поле Da_te, меньше, чем текущая. Вот код для добавления записейPrivate Sub Command1_Click(ByVal...

Удалить запись
Доброго времени суток. Пишу блог (уже не раз писал об этом) и наткнулся на проблему. Вообщем, у меня в блоге, если у тебя стоит сессия root...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru