데이터가 Excel 시트에서 할당되는 dtatgridview와 dtatgridview의 행을 SQL Server 테이블에 삽입하는 단추가있을 때 삽입 단추를 클릭하면 오류가 발생하고 값 770,214,566 상기 제 질문 제목에 선언 예외는 사용자의 휴대 전화 번호이고, 데이터 타입은 문자 인 (9)이 삽입 버튼 내 코드 내 테이블의 대부분에서varchar 형식의 산술 오버플로 오류 값 = 770214566.000000000
private void addCarsSaveBtn_Click(object sender, EventArgs e)
{
try
{
for (int i = 0; i < addCarsDgv.Rows.Count - 1; i++)
{
SqlCommand cmd = new SqlCommand("insert into cars(Id,name,carType,stickerNo,plotNo,carPath,mobile,whats) values (@id,@name,@type,@sticker,@plot,@path,@mobile,@whats)", cn);
cmd.Parameters.AddWithValue("@id", id + i);
cmd.Parameters.AddWithValue("@sticker", Convert.ToInt32(addCarsDgv.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@name", addCarsDgv.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@mobile", addCarsDgv.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@whats", addCarsDgv.Rows[i].Cells[3].Value);
cmd.Parameters.AddWithValue("@type", addCarsDgv.Rows[i].Cells[4].Value);
cmd.Parameters.AddWithValue("@plot", addCarsDgv.Rows[i].Cells[5].Value);
cmd.Parameters.AddWithValue("@path", addCarsDgv.Rows[i].Cells[6].Value);
cmd.ExecuteNonQuery();
}
MessageBox.Show("All Done!");
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
아주 간단 - ** ADDWITHVALUE **를 사용하지 마십시오. [나쁜 이유로] (https://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue- 이미/) – SMor