У меня есть две таблицы, и мне нужно создать пакет SSIS «задача потока данных»
Таблица A и таблица B, мне нужно создать пакет SSIS, который всегда вставляет данные, которых нет в таблице B, из таблицы A в таблицу B (на основе badgeno в A и badgeno_ID в B). какие мысли и помогает плз?
CREATE TABLE [dbo].[A](
[firstname] [nvarchar](100) NULL,
[mobile] [nvarchar](50) NULL,
[note] [nvarchar](500) NULL,
[city] [nvarchar](255) NULL,
[badgeno] [nvarchar](50) NULL,
[lastname] [nvarchar](100) NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[B](
[ID] [int] IDENTITY(1,1) NOT NULL,
[FirstName] [nvarchar](100) NULL,
[LastName] [nvarchar](100) NULL,
[DateOfBirth] [datetime] NULL,
[FirmID] [int] NULL,
[Phone] [varchar](50) NULL,
[Mobile] [varchar](50) NULL,
[EMail] [nvarchar](100) NULL,
[EmployeeNr] [nvarchar](10) NULL,
[Note] [nvarchar](500) NULL,
[PhonePrivate] [varchar](50) NULL,
[StreetAddress] [nvarchar](255) NULL,
[Zip] [nvarchar](20) NULL,
[City] [nvarchar](255) NULL,
[Data] [nvarchar](500) NULL,
[UserName] [nvarchar](50) NULL,
[Password] [nvarchar](50) NULL,
[ADGUID] [nvarchar](50) NULL,
[Language] [nvarchar](50) NULL,
[Theme] [nvarchar](30) NULL,
[DefaultZone] [int] NULL,
[Bed] [nvarchar](50) NULL,
[badgeNO_ID] [nvarchar](50) NULL,
[RegisteredBy] [nvarchar](50) NOT NULL,
[Registered] [datetime] NOT NULL,
[LastUpdatedBy] [nvarchar](50) NOT NULL,
[LastUpdated] [datetime] NOT NULL,
[DefaultView] [nvarchar](50) NULL,
[ExpandTagList] [bit] NULL,
[PrintEmergencyReport] [bit] NULL,
[EmergencyReportPath] [nvarchar](255) NULL)
2 ответа
Перетащите Execute Sql Task
и поместите туда следующий запрос t-sql. Работа гуден.
INSERT INTO [dbo].[B]
([firstname] , [mobile], [note], [City], [badgeNO_ID] , [LastName])
SELECT [A].[firstname]
, [A].[mobile]
, [A].[note]
, [A].[City]
, [A].[badgeno]
, [A].[LastName]
FROM [dbo].[A]
WHERE NOT EXISTS (SELECT 1
FROM [dbo].[B]
WHERE [dbo].[A].[badgeno] = [dbo].[B].[badgeNO_ID])
Используйте преобразование поиска SSIS с выводом «Нет совпадений»
http://msdn.microsoft.com/en-us/library/ms141821.aspx
https://www.simple-talk.com/sql/ssis/implementing-lookup-logic-in-sql-server-integration-services/
Похожие вопросы
Новые вопросы
mysql
MySQL — это бесплатная система управления реляционными базами данных (RDBMS) с открытым исходным кодом, которая использует язык структурированных запросов (SQL). НЕ ИСПОЛЬЗУЙТЕ этот тег для других БД, таких как SQL Server, SQLite и т. д. Это разные БД, которые используют свои собственные диалекты SQL для управления данными. В вопросе всегда указывайте точную версию сервера. Версии 5.x сильно отличаются по своим возможностям от версий 8+.