Mssql Error Code 2627
Contents |
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of sql error 262 this site About Us Learn more about Stack Overflow the company Business error 2627 sql server 2008 Learn more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask error 2627 violation of primary key Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 6.2 million programmers, just like you, helping each other. Join them; it only takes a minute: Sign
Violation Of Primary Key Constraint In Sql Server
up Unique Key Violation in SQL Server - Is it safe to assume Error 2627? up vote 37 down vote favorite 3 I need to catch violation of UNIQUE constraints in a special way by a C# application I am developing. Is it safe to assume that Error 2627 will always correspond to a violation of this kind, so that I can use sqlexception number 2601 if (ThisSqlException.Number == 2627) { // Handle unique constraint violation. } else { // Handle the remaing errors. } ? sql-server-2005 unique-constraint share|improve this question edited May 3 '12 at 20:37 Mark Sowul 6,0042335 asked Jun 26 '11 at 11:47 User 1,25711932 add a comment| 3 Answers 3 active oldest votes up vote 73 down vote accepted 2627 is unique constraint (includes primary key), 2601 is unique index SELECT * FROM sys.messages WHERE text like '%duplicate%' and text like '%key%' and language_id = 1033 share|improve this answer answered Jun 26 '11 at 12:19 gbn 268k40380482 1 +1 for including the SQL –Peter H. Jul 3 '13 at 11:46 @gbn What is the difference between unique constraint and unique index? Don't both enforce indices? –student Feb 18 at 15:36 add a comment| up vote 4 down vote Here is a handy extension method I wrote to find these: public static bool IsUniqueKeyViolation(this SqlException ex) { return ex.Errors.Cast
(Русский)ישראל (עברית)المملكة العربية السعودية (العربية)ไทย (ไทย)대한민국 (한국어)中华人民共和国 (中文)台灣 (中文)日本 (日本語) HomeLibraryLearnDownloadsTroubleshootingCommunityForums Ask a question Quick access Forums home Browse forums users FAQ Search related threads Remove From My Forums Answered sql error 2601 by: Errors 2601 and 2627 SQL Server > Transact-SQL
Sql Server Error 547
Question 0 Sign in to vote Hi What is the difference between Sql Server 2005
Sql Error 3621
errors 2601 and 2627? How could one cause error 2627? Thanks Sunday, August 13, 2006 6:54 PM Reply | Quote Answers 1 Sign in http://stackoverflow.com/questions/6483699/unique-key-violation-in-sql-server-is-it-safe-to-assume-error-2627 to vote 2601 - Violation in unique index 2627 - Violation in unique constraint (although it is implemented using unique index) The error messages are used to distinguish the object on which the violation happens (unique constraint or unique index). Also, constraints are logical entities and part of https://social.msdn.microsoft.com/Forums/sqlserver/en-US/272c3c7e-0819-4750-a8e8-ae364be34f01/errors-2601-and-2627?forum=transactsql the ANSI SQL standard whereas indexes are physical structures that are not part of the standard. So the ANSI SQL standard doesn't talk about how a primary key or unique constraint should be enforced by a database engine. It just happens that SQL Server enforces primary key/unique constraints using an unique index underneath the covers. And when you create logical data model you can use only constraints. Indexes are created on the tables for optimizing certain access paths or queries and not part of the logical data model. Sunday, August 13, 2006 7:54 PM Reply | Quote Microsoft is conducting an online survey to understand your opinion of the Msdn Web site. If you choose to participate, the online survey will be presented to you when you leave the Msdn Web site.Would you like to participate? Privacy statement © 2016 Microsoft. All rights reserved.Terms of Use|Trademarks|Privacy Statement|Site Feedback
Messages 2001-3000 Messages 3001-4000 Messages 4001-5000 Messages 5001-6000 Messages 6001-7000 Messages 7001-7500 Messages 7501-8000 Messages 8001-8500 Messages 8501-9000 Messages 9001-9500 Messages 9501-10000 Messages 10001-10500 Messages 10501-11000 Messages 11001-11500 Messages 11501-12000 Messages 12001-13000 http://www.sql-server-helper.com/error-messages/msg-2627.aspx Messages 13001-13500 Messages 14001-14500 Home>SQL Server Error Messages> Msg 2627 - Violation of PRIMARY KEY constraint Constraint Name. Cannot insert duplicate key in object Table Name. SQL Server Error Messages - Msg 2627 - Violation of PRIMARY KEY constraint Constraint Name. Cannot insert duplicate key in object Table Name. SQL Server Error Messages - Msg 2627 Error Message Server: Msg 2627, Level 14, State 1, Line 1 Violation of sql error PRIMARY KEY constraint Constraint Name. Cannot insert duplicate key in object Table Name. Causes: This error occurs when you are trying to insert a new record into a table that contains a PRIMARY KEY constraint and the key of the record being inserted already exists in the table. As an example, suppose you have a table containing the different loan types that your application are accepting: CREATE TABLE [dbo].[Loan violation of primary Type] ( [Loan Type ID] VARCHAR(20) NOT NULL PRIMARY KEY, [Name] VARCHAR(50) NOT NULL ) GO And your table already contains the following loan types: Loan Type ID Name ------------- ------------------ CAR Car Loan HOME Home Loan HOME EQUITY Home Equity Loan PERSONAL Personal Loan STUDENT Student Loan If you try to add another loan type where the Loan Type ID already exists without knowing that it is already in the table, you will get the error. INSERT INTO [dbo].[Loan Type] ( [Loan Type ID], [Name] ) VALUES ('HOME EQUITY', 'Home Equity Loan') Server: Msg 2627, Level 14, State 1, Line 1 Violation of PRIMARY KEY constraint 'PK_Loan_Type'. Cannot insert duplicate key in object 'Loan Type'. The statement has been terminated. Solution / Work Around: To avoid this error, check first if a record with a given key already exists in the table and if it doesn’t exist yet, then perform the INSERT: IF NOT EXISTS (SELECT 'X' FROM [dbo].[Loan Type] WHERE [Loan Type ID] = 'HOME EQUITY') INSERT INTO [dbo].[Loan Type] ( [Loan Type ID], [Name] ) VALUES ('HOME EQUITY', 'Home Equity Loan') Related Articles : Frequently Asked Questions - SQL Server Error Messages Frequently Asked Questions - INSERT Statement Frequently Asked Questions - SELECT