вставить данные в несколько таблиц - возможно, используя OUTPUT - SQL Server 2005 - PullRequest
0 голосов
/ 20 июля 2010

Я хотел бы вставить данные из файла в таблицу Division этой модели, которая очень упрощена:

create table Statements (
        Id INT IDENTITY NOT NULL
       primary key (Id)
    )

create table Item (
        StatementFk INT not null,
       ItemNameFk INT not null,
       primary key (StatementFk)
    )

create table ItemNames (
        Id INT not null,
       Name NVARCHAR(255) null unique,
       primary key (Id)
    )

create table Division (
        ItemFk INT not null,
       primary key (ItemFk)
    )

alter table Item 
        add constraint FKBCDC2F95A77158D3 
        foreign key (StatementFk) 
        references Statements

    alter table Item 
        add constraint FKBCDC2F957105B2A7 
        foreign key (ItemNameFk) 
        references ItemNames

alter table TaxonomyDivision 
        add constraint FKCFB817265F647111 
        foreign key (ItemFk) 
        references Item

Здесь Division - дочерний объект Item, а Item - дочерний объект Statements,Исходные данные выглядят так:

Division1
Division2
Division1
Division3

Результат должен быть следующим:

ItemNames
1, Division1
2, Division2
3, Division3

Statements
1
2
3
4

Item
1,1
2,2
3,1
4,3

Division
1
2
3
4

Я думаю, что путь вперед - это использовать OUTPUT, но я не знаю, как его использовать вэто довольно сложный случай (я знаю, как сделать массовую вставку и т. д.)

Ждем любых отзывов.Спасибо.

С наилучшими пожеланиями,

Кристиан

1 Ответ

0 голосов
/ 21 июля 2010

В настоящее время я использую циклы для достижения этого, что является своего рода решением, но очень медленным. Неужели нет подходов, основанных на множестве? Спасибо!

Christian

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...