2013-02-14 98 views
0

即時通訊使用SQL Server Express 2008和Im試圖將數據添加到具有datetime2(7)的數據類型的表中的字段。無法添加數據到datetime2字段

這就是我試着添加:

'2012-02-02 12:32:10.1234' 

但我得到的錯誤

Msg 8152, Level 16, State 4, Line 1 
String or binary data would be truncated. 
The statement has been terminated. 

這是否意味着它太長被添加到現場?並應該削減技能?如果是這樣 - 你能給我一個它應該看起來如何的例子嗎?

注 - 我也嘗試過這種格式:

'01/01/98 23:59:59.999' 

感謝

**編輯

實際聲明:

INSERT INTO dbo.myTable 
( 
nbr, 
id, 
name, 
dsc, 
start_date, 
end_date, 
last_date, 
condition, 
condtion_dsc, 
crte_dte, 
someting, 
activation_date, 
denial_date, 
another_date, 
a_name, 
prior_auth_start_date, 
prior_auth_end_date, 
history_cmnt, 
cmnt, 
source, 
program, 
[IC-code], 
[IC-description], 
another_start_date, 
another_start_date, 
ver_nbr, 
created_by, 
creation_date, 
updated_by, 
updated_date) 
VALUES 
(
26, 
'a', 
'sometinh', 
'c', 
01/01/98 23:59:59.999, 
01/01/98 23:59:59.999, 
01/01/98 23:59:59.999, 
'as', 
'asdf', 
01/01/98 23:59:59.999, 
'lkop', 
01/01/98 23:59:59.999, 
01/01/98 23:59:59.999, 
01/01/98 23:59:59.999, 
'a', 
01/01/98 23:59:59.999, 
01/01/98 23:59:59.999, 
'b', 
'c', 
'd', 
'b', 
'c', 
'd', 
01/01/98 23:59:59.999, 
01/01/98 23:59:59.999, 
423, 
'Monkeys', 
01/01/98 23:59:59.999, 
'Goats', 
01/01/98 23:59:59.999 
); 
+1

你能解釋你是如何「試圖將數據添加到一個領域」 - 使用什麼?編輯前N行?插入查詢?還有別的嗎?你是否包含引號?也有可能錯誤來自表格上的觸發器或不同的列? – 2013-02-14 17:46:33

+1

這是在DATETIME列上插入時出現的奇怪錯誤。你可以使用表格定義和整個'INSERT'嗎? – Lamak 2013-02-14 17:46:53

+0

@AaronBertrand即時通訊使用插入查詢來做到這一點,是的,即時消息包括報價,因爲我讀到我需要他們的SQL服務器。我無法顯示整個插入語句,因爲一些信息可能是敏感的東西 – Katana24 2013-02-14 17:49:26

回答

1

仔細看在你試圖插入的桌子上。我打賭你試圖插入char/varchar/nchar/nvarchar列的值中的一個太長。

SELECT 
    name, 
    max_length/CASE WHEN system_type_id IN (231, 239) 
    THEN 2 ELSE 1 END 
FROM sys.columns 
WHERE [object_id] = OBJECT_ID('dbo.TargetTableName') 
AND system_type_id IN (167, 175, 231, 239); 

這將讓你像一個列表:

name  
-------- -------- 
col1  32 
col5  64 
col7  12 

現在,比較此列表,你在你的VALUES條款有文字。正如我在評論中所建議的那樣,我敢打賭,其中一個人物的字數超過了桌子允許的數量。

有可能有二進制或varbinary列,問題在那裏,但我強烈懷疑這是一個簡單的「字符串太長」的問題 - 並且與您的DATETIME2(7)值完全無關。