ms 액세스 데이터베이스에 내 클라이언트의 사용자 ID를 삽입하는 동안 오류가 발생합니다.OLEDB의 오버 플로우 예외
오류는 오버플로입니다.
위의 오류가 나타나면 삽입하려고합니다.
나는이 코드를 사용하고 있습니다.
OleDbCommand cmd = new OleDbCommand("insert into UserInfo " + "([firstname], [lastname], [gender], [occupation], [expirydate], [UserId], [phoneno]) " + " values('" + txt_FirstName.Text + "','" + txt_LastName.Text + "','" + cmb_Gender.Text + "','" + cmb_Occupation.Text + "','" + txt_expiryDate.Text + "','" + txt_HardDiskId.Text + "','" + txt_PhoneNo.Text + "');", con);
OleDbCommand cmd1 = new OleDbCommand("select * from UserInfo where (HardDiskId='" + txt_HardDiskId.Text + "')", con);
int temp = 0;
try
{
con.Open();
string count = (string)cmd1.ExecuteScalar();
if ((count == "") || (count == null))
{
temp = cmd.ExecuteNonQuery();
if (temp > 0)
{
MessageBox.Show("User ID of " + txt_FirstName.Text + " " + txt_LastName.Text + " has been added");
}
else
{
MessageBox.Show("Record not added");
}
}
else
{
MessageBox.Show("User ID of " + txt_FirstName.Text + " already exists. Try another user ID.");
}
}
어떤 오류가 발생합니까? _exact_ 오류/예외 메시지를 게시 할 수 있습니까? ? – Oded
temp = cmd.ExecuteNonQuery();이 줄에 –
그건 그렇고, SQL에 문자열을 연결하는 것은 좋은 생각이 아닙니다. 귀하의 코드는 [SQL Injection] (http://en.wikipedia.org/wiki/SQL_injection)에 열려 있습니다. – Oded