Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 14.02.2011
Сообщений: 153

Удаление последней записи

26.05.2012, 15:53. Показов 986. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всех приветствую!

Я написал функцию удаления записей из нескольких таблиц. И при тестировании все работало, но столкнулся с такой ситуацией:
Если запись из удаляемой таблицы единственная связанная с записью другой таблицы, то необходимо удалить записи в обоих таблицах.

На практике выглядит так:
Есть альбом и в нем всего одна песня. Если я удаляю эту песню, то должен удалить и этот альбом, чтобы не оставлять его пустым.

Проблема заключается в формировании нужного условия или запроса, т.е. узнать, единственная ли песня в альбоме или нет. Я не представляю, как примерно должно это выглядеть.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.05.2012, 15:53
Ответы с готовыми решениями:

Удаление последней записи access
Требуется удалить последнюю добавленную запись в таблицу. Нужно полагать, что сперва нужно определить кол-во записей. но что дальше?

Определение последней записи в ComboBox
Ребята помогите решить вопрос. На форме есть комбобокс и баттон, в комбобоксе есть несколько записей. На кнопку надо написать код чтобы при...

Удаление последней записи
Всем привет! Как реализовать чтобы при удалении последней записи на форме -данные обновились на предыдущую запись, а не пустая форма...

5
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
26.05.2012, 17:05
Mesken, ну так после удаления песни, сделать выборку на наличие песен по данному альбому, если число записей будет равно 0, то бахнуть альбом - это как самый простой вариант.

Добавлено через 5 минут
Sasha, уже вижу Вас тут, поэтому спросить хотел - а можно ли в данной ситуации заюзать хранимую процедурку?
1
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
26.05.2012, 22:29
после запроса вот это
C++
1
2
3
4
5
6
7
8
if(ADOQuery1->RecordCount==1)
{
//то-то
}
else
{
//то-то
}
1
0 / 0 / 1
Регистрация: 14.02.2011
Сообщений: 153
27.05.2012, 12:24  [ТС]
К сожалению, я сейчас не могу проверить работоспособность ваших советов, т.к. вышла ошибка. И я не понимаю что она означает. Пожалуйста, помогите разобраться что не так.
Вот часть кода на который ругается:
C++
1
2
3
4
5
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("SELECT perf_id FROM album WHERE Name2 = '"+ComboBox2->Text+"'");
Query1->SQL->Open();
D_id = Query1->FieldByName("perf_id")->AsString;
и ошибка:
[C++ Error] MainForm.cpp(204): E2316 'Open' is not a member of 'TStrings'
Как я понимаю, он ругается на Open, но что с ним я не знаю.
0
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
27.05.2012, 12:33
Mesken, заработались Вы уважаемый, надо не забывать отдыхать
C++
1
Query1->Open();
1
0 / 0 / 1
Регистрация: 14.02.2011
Сообщений: 153
27.05.2012, 14:54  [ТС]
))) и правда)) аж стыдно стало, это же надо было так проглядеть)

Но у меня еще один вопрос, уже давно назревавший:
Когда я только-только создал базу данных, я его сразу заполнил некоторыми примерами. Так вот, есть у меня запись "Don't Stay" и с ней не возможно работать. Т.е. когда пытаюсь удалить выдает ошибку, и это происходит только с этой записью. И я знаю в чем причина, это апостроф " ' ".
Как игнорировать этот знак, да и другие тоже, если есть такие?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.05.2012, 14:54
Помогаю со студенческими работами здесь

Запись текста в textbox и удаление последней строки в ходе записи,без перезаписи
Запись текста в textbox и удаление последней строки в ходе записи без перезаписи.Есть у кого нибудь готовые наработки или идеи как...

Проверка на совпадение последней и следующей записи при записи в файл
Доброго времени суток) У меня в файл записывается произошло соединение с сервером или нет, но проверка с соединением происходит каждые...

ListView: добавление записи, выбор записи, удаление записи
на форме есть три текст бокса: textbox1(имя), textbox2(фамилия), textbox3(отчество), textbox4(выбранное) кнопка Button1(добавить),...

удаление последней буквы..
Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 строчных русских букв; между соседними словами -...

Удаление последней строки
Имеется RichTextBox с n-ым количеством строк, в которых содержатся цифры Подскажите пожалуйста, как удалить первую строчку в RichTextBox,...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
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 и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru