Ошибка SQL при вставке новой записи - PullRequest
0 голосов
/ 16 декабря 2010

Я сталкиваюсь с очень странным, когда вставляю новую запись в таблицу в моем экземпляре SQL SErver DB. У меня есть следующий простой запрос:

INSERT myTable (SerialNumber, PartNumber, IP, QA) VALUES ('123456789012', '1234567','192.168.1.1','1')

И таблицу, которую я пытаюсь изменить:

SerialNumber - varchar(64) - Not_Null

PartNumber - varchar(64) - Null

IP- varchar(64) - Null

Col_1   - varchar(64)  - Null

Col_2   - bit - Null

Col_3   - bit - Null

QA  - bit - Null

Теперь, когда я запускаю этот запрос в SQL Server Management Studio, я получаю следующую ошибку:

Msg 241, Level 16, State 1, Line 1
Conversion failed when converting datetime from character string.

Нигде в моей таблице нет столбца с типом datetime, поэтому я не понимаю, почему я получаю эту ошибку. Любая помощь приветствуется.

Ответы [ 3 ]

0 голосов
/ 16 декабря 2010

Только что попробовал это определение таблицы и запрос на SQL Server Express 2005 и отлично работает здесь.

0 голосов
/ 16 декабря 2010

эта вставка выглядит нормально, без видимых типов данных datetime.Есть ли в таблице триггер, который может вставить дату и время?попробуйте это, чтобы увидеть, есть ли триггер:

sp_helptrigger myTable
0 голосов
/ 16 декабря 2010

Мне не удалось воспроизвести следующий скрипт на сервере sql 2005

declare @myTable table
(
    SerialNumber varchar(64) Not Null,
    PartNumber  varchar(64)  Null,
    IP varchar(64)  Null,
    Col_1  varchar(64)  Null,
    Col_2  bit  Null,
    Col_3  bit  Null,
    QA  bit  Null
)

INSERT @myTable (SerialNumber, PartNumber, IP, QA) VALUES ('123456789012', '1234567','192.168.1.1','1')
select * from @myTable

Это сработало, как и ожидалось ... Можете ли вы перепроверить, чтобы убедиться, что на вашем столе нет триггера?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...