Здравствуйте, LandWarrior, Вы писали:
LW>Какие есть проблемы при использовании ADO.NET для обновления записей в такой таблице?
Хорошая идея, буду теперь спрашивать на интервью
Здравствуйте, LandWarrior, Вы писали: LW>Какие есть проблемы при использовании ADO.NET для обновления записей в такой таблице?
У голых команд с sql? Да никаких особо. Или речь о DataSet/DataAdapter?
LW>http://files.rsdn.ru/11880/diagram.PNG
Интересно, зачем там FK_CATEGORY_CATEGORY.
Здравствуйте, Lloyd, Вы писали:
LW>>Какие есть проблемы при использовании ADO.NET для обновления записей в такой таблице? L>Ровно такие же, как и во всех остальных технологиях доступа к данным — порядок изменений придется вычислять "ручками".
Вычислять вовсе не обязательно.
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, LandWarrior, Вы писали:
LW>Какие есть проблемы при использовании ADO.NET для обновления записей в такой таблице? LW>[img]http://files.rsdn.ru/11880/diagram.PNG[/img]
Здравствуйте, Lloyd, Вы писали:
_FR>>Вычислять вовсе не обязательно.
L>Обязательно. Тот пример, как который ты привел ссылку не во всех случаях работает.
А можно пример таких случаев? ИМХО, наоборот, вычисление не поможет тогда, когда по логике допустимы циклические связи.
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, _FRED_, Вы писали:
L>>Обязательно. Тот пример, как который ты привел ссылку не во всех случаях работает.
_FR>А можно пример таких случаев? ИМХО, наоборот, вычисление не поможет тогда, когда по логике допустимы циклические связи.
Например было три записи A, B, C. A — ссылается на B.
Меняем ссылку у A на C, B — удаляем.
Следуя твоему алгоритму, сначала удаляем в базе B. И тут же обламываемся, т.к. А в базе все еще ссылается на B.
Здравствуйте, Lloyd, Вы писали:
L>>>Обязательно. Тот пример, как который ты привел ссылку не во всех случаях работает.
_FR>>А можно пример таких случаев? ИМХО, наоборот, вычисление не поможет тогда, когда по логике допустимы циклические связи.
L>Например было три записи A, B, C. A — ссылается на B. L>Меняем ссылку у A на C, B — удаляем. L>Следуя твоему алгоритму, сначала удаляем в базе B. И тут же обламываемся, т.к. А в базе все еще ссылается на B.
Ну так это я просто ошибся с последовательностью действий: если сначала следать Insert, потом Update а затем уже Delete, то проблем не будет. Или нет?
А вот что ты понимаешь под "вычислять"? Топологическую сортировку или что-то другое? А как оно будет работать в случае позволения циклов?
Help will always be given at Hogwarts to those who ask for it.
Здравствуйте, _FRED_, Вы писали:
_FR>Ну так это я просто ошибся с последовательностью действий: если сначала следать Insert, потом Update а затем уже Delete, то проблем не будет. Или нет?
Да вроде все в порядке будет.
_FR>А вот что ты понимаешь под "вычислять"? Топологическую сортировку или что-то другое? А как оно будет работать в случае позволения циклов?
В общем случае — не будет, но для отношения родитель-ребенок — вполне.