|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.05.2017, 10:52 | #1 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
Удаление данных из нескольких таблиц
Ребят, всем привет. Есть 4 взаимосвязанных между собой таблицы, нужно удалить строку данных, которая на скриншоте, пробовал сделать удаление по отдельности из каждой таблицы, начиная с потомков (с models_appr), но sql ругается на наличие автоинкрементируемого первичного ключа, как я только не пробовал удалять данные - бесполезно.
таблицы создавались через диаграмму
from dark to light)
|
16.05.2017, 11:24 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Чего решил, что models_appr какой-то потомок? Последовательность удаления - remont, models, marks, types. А еще лучше каскадное удаление на уровне СУБД. И вообще не понятно на первый взгляд назначение remont
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 16.05.2017 в 11:26. |
16.05.2017, 11:35 | #3 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
о назначении говорил в этой теме
а как код будет выглядеть? примерно вот так? Код:
from dark to light)
|
16.05.2017, 11:47 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
У тебя структура не понятная. У меня мозг воспламенился от такой )) В такой структуре и так как хочется тебе удалить можно только каскадно, последовательно - фиг вам
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
16.05.2017, 11:49 | #5 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
а как реализовать в более правильном виде структуру, чтобы можно было бы удалить последовательно
from dark to light)
|
16.05.2017, 11:51 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Сначала покажи по какому критерию и что хочешь удалять, только не тот, что в #3 ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
16.05.2017, 12:41 | #7 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
смотрите, на первом скриншоте есть таблица, в ней строки данных при выборке из 4 таблиц
т.е. атрибут "Позиция" берется из apparatures.kod_apprts далее по каждому наименованию из таблиц выводится в программу (тип, марка, модель) при событии OnClick программа берет позицию щелчка и определяет номер позиции записи, по которой был щелчек, например onClick на второй записи в таблице : apparatures.kod_apprts='2'. Эту запись и хочу удалить. связи марки,модели и типа между собой нужно для: (пример) types_appr компьютер телефон marks_appr если выбран комп, то показать все марки, относящиеся к компам если телефон, то к телефонам при том таблица хранит все данные, но отображаются только нужные в комбобоксе оболочки models_appr при выборе марки самсунг, например, показать все модели это марки
from dark to light)
|
16.05.2017, 12:53 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
У тебя models, marks и types по сути справочники. К ним внешние ссылки из remont. Досточно было бы и одной - только к models, по ней однозначно можно определить marks и types. При удалении из remont зачем удалять записи из справочников?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
16.05.2017, 13:11 | #9 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
точно, об этом не подумал, спасибо!
значит две связи можно убрать...оставить только модель-аппаратура. и все же, как удалить данные из справочников, препод сказал нужен такой функционал)
from dark to light)
|
16.05.2017, 13:20 | #10 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
И как будешь чистить справочники? Для того что бы удалить запись из types нужно удалить все из marks имеющие внешний ключ на types. И для каждой из них все из models имеющие внешний ключ на marks.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление из нескольких таблиц | Nekala | БД в Delphi | 6 | 04.12.2014 13:14 |
Удаление из нескольких таблиц(Delete) | manula | PHP | 11 | 09.03.2013 23:45 |
Запрос данных из нескольких таблиц | Daslife | SQL, базы данных | 5 | 07.01.2013 14:04 |
выборка данных из нескольких таблиц | AlexxxM | Microsoft Office Access | 0 | 27.05.2010 12:08 |
Удаление из нескольких таблиц | qwerty1301 | Microsoft Office Access | 17 | 05.05.2010 11:34 |