powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Заполнение таблиц родительская - дочерняя
8 сообщений из 8, страница 1 из 1
Заполнение таблиц родительская - дочерняя
    #33984499
ANTIVIR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не подскажете кто как заполняет подчиненные таблицы?
Нашел примерчик, по заполнению таковых в датасете, но впри апдейте бд подчиненную таблицу как заполнить?

Для осн.таблицы делаю
Код: plaintext
1.
.AutoIncrementSeed = - 1 
.AutoIncrementStep = - 1 
, а потом ключ вношу в дочернюю, соответственно и пишет он туда -1 к примеру, и внося в базу вносит -1, а в базе строк в осн.таблице с -1 конечно нет.
Поэтому хотелось бы увидеть примеры, кто как заполняет такие таблицы?
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33991550
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ANTIVIR
Поэтому хотелось бы увидеть примеры, кто как заполняет такие таблицы?

поиск по сайту, либо в MSDN:
UpdateRule DeleteRule AcceptRejectRule

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33993205
ANTIVIR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sa
поиск по сайту, либо в MSDN:
UpdateRule DeleteRule AcceptRejectRule


Сдела FK по примеру MSDN

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
        pCol = DS_All.Tables("tblPar").Columns("IdKey")
        cCol = DS_All.Tables("tblChild").Columns("IdKey")
        myFK = New ForeignKeyConstraint("FK_tblPar", pCol, cCol)
        myFK.UpdateRule = Rule.Cascade
        myFK.DeleteRule = Rule.Cascade
        myFK.AcceptRejectRule = AcceptRejectRule.None
        DS_All.Tables("tblChild").Constraints.Add(myFK)
        DS_All.EnforceConstraints = True

Но при апдейте датасета по таблице tblChild , всеравно вылетает экспешн что нарушена целостность таблиц
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33993266
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ANTIVIR
Но при апдейте датасета по таблице tblChild , всеравно вылетает экспешн что нарушена целостность таблиц

Как Update делаете?

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33993327
ANTIVIR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
DA_Par.Update(DS_All, "tblPar")
DA_Child.Update(DS_All, "tblChild")
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33993349
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ANTIVIR
Код: plaintext
\nDA_Par.Update(DS_All, "tblPar")\nDA_Child.Update(DS_All, "tblChild")\n

нужно по отдельности про апдейтить добавляемые, удаляемые и обновляемые строки, например, как автор топика делал здесь:
/topic/82293

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33993929
ANTIVIR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sa
нужно по отдельности про апдейтить добавляемые, удаляемые и обновляемые строки, например, как автор топика делал здесь:
/topic/82293

Код: plaintext
 uid  =  S a

/topic/82293#594225

Вы это имели ввиду? Я просто не уловлю , каким образом это решит мои проблемы?

У меня получается что в род.таблице после апдейта строке выдается новый ключ исходя из значений счетичика (т.к. .AutoIncrementSeed = -1
.AutoIncrementStep = -1), а в доч.таблицу в поле для FK пишется -1,я предполагал DA сам каким то образом выдает ключи в доч.таблицу.

Или все таки такое нельзя сделать? И нужно самому дергать только что полученный ключ и добавлять его в дочку?
...
Рейтинг: 0 / 0
Заполнение таблиц родительская - дочерняя
    #33995571
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ANTIVIR
Я просто не уловлю , каким образом это решит мои проблемы?


ANTIVIR
Но при апдейте датасета по таблице tblChild , всеравно вылетает экспешн что нарушена целостность таблиц

что за exception вылетает? оригинал ошибки.
подробнее в чем суть проблемы?

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Заполнение таблиц родительская - дочерняя
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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