1

次のコードがあります。

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();

「文字列またはバイナリデータが切り捨てられます。ステートメントは終了しました」という問題が発生し続けました。緯度と経度の列の型はnvarchar(max)、SQL テーブルにあります。私の場合、何が問題になる可能性がありますか?

4

1 に答える 1

2

次の行になります。

glat += result.geometry.location.lat;
glong += result.geometry.location.lng;
gPostal += postalCode;    

彼らはただ間違っているように見えます。あなたが投稿したすべてのコードは、+= のために郵便番号が増加し続け、最終的に列のサイズよりも長くなるループにあるように見えます。

lat と lng が varchar(max) であっても、列の値を徐々に追加するのは何ですか?

于 2013-04-11T23:56:43.060 に答える