Вставить одну строку в таблицу первичного ключа и несколько строк в таблицу внешнего ключа - PullRequest
0 голосов
/ 09 сентября 2011

ASP.NET & SQL 2008

Я использую SQLDatasource и данные из нескольких текстовых полей.

  1. Я хочу вставить 1 строку в таблицу первичного ключа& несколько строк в таблице внешнего ключа одновременно.Мне нужно использовать идентификатор, сгенерированный во вставке Primary_Table для использования в Secondary_Table.Я планировал использовать хранимую процедуру.Каким будет самый простой способ добиться этого?Должен ли я использовать Scope_Indentity или Output?

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

    Для INSERT я делаю что-то вроде этого.Не уверен, что это лучший способ.

    BEGIN TRANSACTION     
    INSERT INTO table_Main (Col1, Col2,Col3)  VALUES (200, 2.10, 4)
    
    set IDENTITY_INSERT table_Child ON 
    
        INSERT INTO table_Child
                 ( ID, Name, Amt)
                 VALUES
                 ( SCOPE_IDENTITY(), 'Licence',12)
    
        INSERT INTO table_Child
                 ( ID, Name, Amt)
                 VALUES
                 ( SCOPE_IDENTITY(),'Insurance', 4)
    
    
        set IDENTITY_INSERT table_Child OFF
        COMMIT TRANSACTION 
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...