una tipos tener restricciones restriccion que puede nombres ejemplos datos constraint check sql-server sql-server-2005 sql-server-2008 constraints unique-constraint

sql-server - tipos - restricciones de nombres que puede tener una base de datos.



¿Cómo puedo crear una restricción única de SQL basada en 2 columnas? (5)

Aquí está la sintaxis para crear una RESTRICCIÓN única en comparación con un ÍNDICE único.

ALTER TABLE publishers ADD CONSTRAINT uqc_pub_name UNIQUE (pub_name)

Es importante tener en cuenta que existen diferencias sutiles dependiendo del método que utilice para evitar la singularidad de una columna.

Consulte la siguiente referencia de MSDN para ver un tutorial interesante de estos:

http://msdn.microsoft.com/en-us/library/aa224827(SQL.80).aspx

Tengo una mesa como esta:

|UserId | ContactID | ContactName --------------------------------------- | 12456 | Ax759 | Joe Smith | 12456 | Ax760 | Mary Smith | 12458 | Ax739 | Carl Lewis | 12460 | Ax759 | Chuck Norris | 12460 | Bx759 | Bruce Lee

Necesito agregar una restricción a esta tabla para que ningún usuario pueda tener identificaciones de contacto duplicadas. Los usuarios están importando datos de varios sistemas externos, por lo que ContactId no será único en todos los ámbitos, sino que será único por usuario.

Sé cómo crear contraints únicos y no nulos basados ​​en columnas individuales, pero ¿cómo puedo crear contraints únicos en 2 columnas?


Puede intentar ALTER TABLE [TABLE_NAME] ADD UNIQUE (column1,column2,column3 ...columnN) .

Espero que esto ayude a los aplausos.


Puedes agregar restricciones únicas a tus campos:

ALTER TABLE YourTable ADD CONSTRAINT UQ_UserId_ContactID UNIQUE(UserId, ContactID)


Puedes intentar esto:

CREATE UNIQUE CLUSTERED INDEX index_name ON TABLE (col1,col2) or CREATE UNIQUE NONCLUSTERED INDEX index_name ON TABLE (col1,col2)

o

ALTER TABLE [dbo].[TABLE] ADD CONSTRAINT UNIQUE_Table UNIQUE CLUSTERED ( col1, col2 ) ON [PRIMARY]


CREATE TABLE [LineItems]( [ID] [int] IDENTITY(1,1) NOT NULL, [OrderID] [int] NOT NULL, [LineItemNumber] [int] NOT NULL, CONSTRAINT [PK_LineItems] PRIMARY KEY CLUSTERED ( [ID] ASC ), CONSTRAINT [UC_LineItems] UNIQUE NONCLUSTERED ( [OrderID] ASC, [LineItemNumber] ASC ) )