我是 SSIS 的新手,我收到一条错误消息。谁能帮我 ?我的数据中没有重复项
错误消息是 OLE DB 记录可用。来源:“Microsoft SQL Server Native Client 11.0” Hresult:0x80040E2F 描述:“违反 PRIMARY KEY 约束 'PK_DimCourse'。无法在对象 'dbo.DimCourse' 中插入重复键。重复键值为 (CS1301)。”。
我当前的表看起来像这样
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[DimCourse](
[CourseCode] [nvarchar](10) NOT NULL,
[SubjectCode] [nvarchar](10) NOT NULL,
[CourseNumber] [nvarchar](10) NOT NULL,
[CourseTitle] [nvarchar](50) NOT NULL,
[Level1] [nvarchar](20) NOT NULL,
[Level2] [nvarchar](20) NOT NULL,
CONSTRAINT [PK_DimCourse] PRIMARY KEY CLUSTERED
(
[CourseCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
Run Code Online (Sandbox Code Playgroud)
I know I am too late to answer. I was getting the similar error message, found out what was the problem, and solved it. I hope it will help the future readers.
Scenario:
What I have tried to solve:
Select CodeID, CodeName from dbo.Codes GROUP BY CodeID, CodeName. It was still returning error. I got confused at this point. 真正的问题是什么?
我的源表 coulmn CodeName 区分大小写,但目标表中的 CodeName 列不区分大小写。出现这种情况是因为,sql server 生成脚本选项,脚本排序规则默认设置为 false。
对我有用的解决方案:
我使用脚本整理选项重新创建了我的目标表:True,这使我的目标列区分大小写,并且解决了我的问题。
| 归档时间: |
|
| 查看次数: |
5289 次 |
| 最近记录: |