2009-11-15 12 views

Respuesta

35

sintaxis SQL Server para the check constraint:

create table numbers (
    number int not null 
     check(number >= 1234 and number <= 4523), 
    ... 
) 

create table numbers (
    number int not null, 
    check(number >= 1234 and number <= 4523), 
    ... 
) 

create table numbers (
    number int not null, 
    constraint number_range_check 
     check(number >= 1234 and number <= 4523), 
    ... 
) 
+1

El enlace de abajo realmente me ayudó: http://technet.microsoft.com/en-us/library/ms179491.aspx. – Shimmy

+1

¿Por qué revisaría Not Null, cuando hay una restricción que indirectamente lo soluciona? ¿Me estoy perdiendo de algo? – madCode

+5

Para agregar una restricción a una columna existente: 'ALTER TABLE Tbl ADD CONSTRAINT ChkTable_Field CHECK (Campo ENTRE 1234 Y 4523)'. –

1

Si está utilizando SQL Server, que desea utilizar una restricción CHECK así:

CREATE TABLE foo (
    someint INT NOT NULL CHECK (someint >= 1234 AND someint <= 4523) 
) 
9
CREATE TABLE WhatEver 
(
    ... 
    NumericField INTEGER NOT NULL CHECK(NumericField BETWEEN 1234 AND 4523), 
    ... 
); 

Tenga en cuenta que 'entre Y' proporciona un rango que incluye los valores límite citados.

0

Si está utilizando SQL Server mediante SQL Server Management Studio, la forma más conveniente de agregar una restricción de verificación es hacer clic con el botón derecho en la carpeta Restricciones en la vista de árbol (Explorador de objetos) y luego, desde el menú emergente, seleccione Nueva restricción.

un cheque ventanas de restricción aparece con una nueva restricción vacío denominado CK_tableName *

Puede editar un nombre propuesto, e introduzca el código de la restricción de comprobación en el campo Expresión.

Luego, la nueva restricción aparece en la carpeta Restricción (después de seleccionar la carpeta y presionar el ícono de actualización) en el Explorador de objetos y puede editarla haciendo clic con el botón derecho y seleccionando Modificar en el menú emergente.

Cuestiones relacionadas