Visual C# Express 및 MySQL을 사용하여 데이터베이스 응용 프로그램을 만들었습니다. 문제는 데이터가 실제로 변경된 경우에만 C# 폼의 데이터베이스에 데이터를 저장하기를 원합니다. 이제는 '저장'버튼을 클릭 할 때 폼의 모든 필드가 변경 여부와 관계없이 데이터베이스에 저장됩니다.데이터베이스가 변경된 경우에만 값 저장
이//when the details are loaded into the form
String strOriginalName = txtFirstname.Text;
//when the save button is checked
if(strOriginalName != txtFirstname.Text)
{
String strUpdate = "UPDATE table SET firstName = txtFirstname.Text";
MySqlCommand cmdUpdate = new MySqlCommand(strUpdate, connection);
cmdUpdate.ExecuteNonQuery();
}
다른 사람이 더 나은 또는 대체가 있습니까 나는 그것이 변경된 경우 단지 형태의 모든 분야를 확인하고 그에 따라 SQL 명령을 변경한다 때우기 솔루션, 즉 해결책? 도움을 주셔서 감사합니다. 내가 모호한 부분이 있으면 알려 주시면 자세히 설명 드리겠습니다.
양식에 표시 할 데이터를 어떻게 쿼리하고 있습니까? MySQLCommand()를 실행하고 결과를 테이블로 가져 와서 테이블의 열에 바인딩하고 있습니까? 각 입력란의 속성이있는 사용자 지정 목록? –
DRapp
나는 이것이 꽤 오래된 것을 안다. 그러나 나는 원래 값을 저장하기 위해'.Tag' 필드를 사용하고 그 다음에 비교를한다. 여러 필드를 처리 할 때 값이 변경된 필드 만 사용하여 업데이트 쿼리를 작성합니다. '.Tag '는 사용자 정의 객체를 저장할 수도 있으므로 필드 이름, 유형 및 원래 값을 입력하면 쉽게 쿼리를 작성할 수 있습니다. –