Casper-SC
@Casper-SC
Программист (.NET)

Каким образом можно сделать такой сценарий: выборка данных в архив, в случае успеха пометить, что данные отправлены?

4fff4006e844484986f61eb977401b46.jpg5eb69c67b68a43218b000009aff0c891.jpg

Есть БД-источник данных, и в ней таблица:
CREATE TABLE dbo.Data (
  ItemId INT IDENTITY,
  Value NVARCHAR(50) NOT NULL,
  CreationDtStamp DATETIME2 NOT NULL CONSTRAINT DefaultDtStamp DEFAULT (GETDATE()),
  Replicated BIT NULL CONSTRAINT DefaultReplicated DEFAULT (0),
  CONSTRAINT PK_Data PRIMARY KEY CLUSTERED (Itemid)
) ON [PRIMARY]
GO

INSERT INTO Data (Value)
  VALUES
   ('sssss'),
   ('3333'),
   ('44444'),
   ('55555'),
   ('667u77'),
   ('hhhhhhh'),
   ('8888888'),
   ('ss99999sss');


Есть БД архив:
CREATE TABLE dbo.Data (
  Itemid INT,
  Value NVARCHAR(50) NOT NULL,
  CreationDtStamp DATETIME2 NOT NULL,
  ReplicationDtStamp DATETIME2 NOT NULL CONSTRAINT DefaultReplicationDtStamp DEFAULT GETDATE(),
  CONSTRAINT PK_Data PRIMARY KEY CLUSTERED (Itemid),
  
) ON [PRIMARY]
GO


Из источника я получаю данные так:
SELECT TOP (3) 
  ItemId,
  Value,
  CreationDtStamp
FROM Data WHERE Replicated = 0;


Далее "Уточняющий запрос" проверяет, что таких данных нет в БД, если нет, то сохраняет. Как сделать так. что если данные успешно сохранены, то пометить их в таблице источника, Replicated. Какой компонент использовать? Как это вообще делается в SSIS?

Может знаете книги, где всё хорошо объясняется? Вообще интуитивно далеко не всегда понятно, как вообще работать со всеми этими компонентами.
  • Вопрос задан
  • 375 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы