字符串或二进制数据将被截断.在update语句中
本文关键字:update 语句 二进制 数据 字符串 | 更新日期: 2023-09-27 18:08:49
我有以下代码:
glat += result.geometry.location.lat;
glong += result.geometry.location.lng;
gPostal += postalCode;
sqlUpdateQuery = "update testlatlong set Lat =@lat,Long =@long where postalcode =@postal";
SqlCommand updateCommand = new SqlCommand(sqlUpdateQuery, sqlConn);
updateCommand.Parameters.Add("@lat", SqlDbType.NVarChar).Value = glat;
updateCommand.Parameters.Add("@long", SqlDbType.NVarChar).Value = glong;
updateCommand.Parameters.Add("@postal", SqlDbType.NVarChar).Value = gPostal;
updateCommand.ExecuteNonQuery();
我一直遇到这样的问题:"字符串或二进制数据将被截断。声明已经终止。"在我的sql表中,lat和long的列类型是nvarchar(max)
。我的问题是什么?
就是这样几行:
glat += result.geometry.location.lat;
glong += result.geometry.location.lng;
gPostal += postalCode;
他们只是看起来不对。您发布的所有代码看起来都像在一个循环中,由于+=,邮政编码将不断增长,最终比列的大小还要长。
即使lat和lng是varchar(max),它在做什么增量添加到列值?