Pregunta

¿Cuál es la mejor práctica para la creación de un campo sí / no booleana al convertir de una base de datos de acceso o en general?

¿Fue útil?

Solución

El equivalente es un campo de bits.

En SQL utiliza 0 y 1 para establecer un campo de bits (al igual que un campo sí / no en Access). En Management Studio se muestra como un valor verdadero / falso (al menos en las últimas versiones).

Cuando se accede a la base de datos a través de ASP.NET expondrá el campo como un valor booleano.

Otros consejos

El tipo de datos BIT se utiliza generalmente para almacenar valores booleanos (0 para falso, 1 para cierto).

Puede utilizar el tipo de columna bit.

Puede utilizar el campo BIT.

Para añadir una columna BIT a una tabla existente, el comando SQL se vería así:

ALTER TABLE table_name ADD yes_no BIT

Si desea crear una nueva tabla, se puede hacer:. CREATE TABLE table_name (yes_no BIT)

Puede utilizar el tipo de datos bit

valores insertados que son mayores que 0 se almacena como '1'

valores insertados que son menores que 0 se almacenarán como '1'

valores insertados como '0' se almacenarán como '0'

Esto es válido para MS SQL Server 2012 expreso

Ejemplo de uso mientras que la creación de una tabla:

[ColumnName]     BIT   NULL   DEFAULT 0

Ya hay responde diciendo uso de Bit. Voy a añadir más a estas respuestas.

Debe utilizar poco para la representación de valores booleanos.

Palabras de artículo de MSDN.

  

Bit puede tomar un valor de 1, 0, o NULL.

     

El motor de base de datos SQL Server optimiza el almacenamiento de columnas de bits. Si   hay 8 bits o menos columnas en una tabla, las columnas se almacenan como   1 byte. Si hay desde 9 hasta 16 bits columnas, las columnas son   almacenado como 2 bytes, y así sucesivamente.

     

Los valores de cadena TRUE y FALSE se pueden convertir en valores de bit: TRUE   se convierte en 1 y FALSE se convierte en 0.

     

La conversión a poco promueve cualquier valor distinto de cero a 1.

     

Referencia

Nota: Es una buena práctica para mantener los valores como 1 y 0 solamente con el tipo de datos NOT NULL

Como bits tienen los valores 1, 0 y NULL. Ver tabla de verdad para esto. Así que el plan valores en consecuencia. Se podría añadir confusión al permitir valor NULL para el tipo de datos de bit.

  

introducir descripción de la imagen aquí

     

Referencia

Puede utilizar el campo BIT

Para crear una nueva tabla:

CREATE TABLE Tb_Table1
(
ID              INT,
BitColumn       BIT DEFAULT 1
)

Adición de columna en la tabla existente:

ALTER TABLE Tb_Table1 ADD BitColumn  BIT DEFAULT 1

Para Insertar registro:

INSERT Tb_Table1 VALUES(11,0)

bit será el más simple y también ocupa el menor espacio. No muy detallado comparado con "S / N", pero estoy bien con él.

bit es la opción más adecuada. De lo contrario Una vez utilizado int para ese propósito. 1 para true y 0 para false.

  

En SQL Server Management Studio de cualquier versión, uso BIT como tipo de datos

, que le proporcionará True o el valor False opciones. en caso de que desee utilizar solo o 1 0 a continuación, puede utilizar este método:

CREATE TABLE SampleBit(
    bar int NOT NULL CONSTRAINT CK_foo_bar CHECK (bar IN (-1, 0, 1))
)

Pero voy a aconsejar estrictamente BIT como La MEJOR . Espero plenamente que es ayudar a alguien.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top