У меня есть таблица в моем SQL Server 2012 следующим образом,SQL Server - BIT типа данных Выпуск
CREATE TABLE TEST (ID INT,NAME VARCHAR(100),STATUS BIT);
Я вставил данные, как это, по ошибке,
INSERT INTO TEST SELECT 1,'A',2;
Когда я опрашиваюсь В результате я нашел столбец «STATUS», хранящий «1». Независимо от значения, которое я вставляю вместо «0», он сохраняет «1». Я чувствовал, что если я определяю столбцы как BIT, тогда он не должен позволять вставлять какие-либо значения, кроме 0 и 1.
Есть ли какой-либо флаг трассировки, который ограничивает такую вставку? Я использую SQL Server 2012 SP3.
Что вы имеете в виду "любое значение, я ввожу"? пример значения пожалуйста? – Haris
Я имел в виду что угодно, кроме «0». Я привел пример «2» в моем вопросе. –
Это потому, что бит может принимать только 0 или 1, этот тип данных используется как логическое значение для true и false. – Haris