![](/img/trans.png)
[英]String or binary data would be truncated. The statement has been terminated. when inserting into the table
[英]Getting “String or binary data would be truncated. The statement has been terminated” when inserting new record
當我嘗試插入數據庫時出現此錯誤。 我已經檢查了大小是否足夠長,以及屬性是否正常。 這是我的SQL布局。
schoolID int (Primary Key)
schoolNaam varchar(50)
stad varchar(30)
我的插入代碼:
BLSchool blSchool = new BLSchool();
List<School> scholen = blSchool.GetAll();
School school = new School();
school.SchoolNaam = schoolnaam.ToString();
school.Stad = schoolstad.ToString();
int schoolID = blSchool.InsertSchool(school);
db.Schools.InsertOnSubmit(school);
db.SubmitChanges();
return school.SchoolID;
不,您沒有檢查尺寸或至少不正確。 schoolnaam
的長度超過50個字符,或者schoolstad
的長度超過30個字符。
為避免該錯誤,請使用以下代碼:
school.SchoolNaam = new string(schoolnaam.ToString().Take(50).ToArray());
school.Stad = new string(schoolstad.ToString().Take(30).ToArray());
如果值較長,則只需要前50/30個字符。
字符串太長,您只是沒有找到問題。
可能您應該只增加列的長度。 varchar
占用所需的空間。 不會浪費空間來增加尺寸。
您可能還應該在客戶端上驗證字符串,並向用戶顯示錯誤。
不要僅僅截斷它,因為這會破壞數據而不會通知用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.