저는 웹 개발 초보자입니다. 텍스트 상자에 시리얼 번호를 입력하는 코드가 있습니다.while 루프를 사용하여 read() for C#
OdbcConnection myOdbcConnection = new OdbcConnection(con1);
OdbcCommand myOdbcCommand = myOdbcConnection.CreateCommand();
String sSQL = "SELECT max(slno)+1 FROM driversmaster";
myOdbcCommand.CommandText = sSQL;
myOdbcConnection.Open();
OdbcDataReader myOdbcDataReader = myOdbcCommand.ExecuteReader();
while (myOdbcDataReader.Read() != false)
{
SlnoTxt.Text = myOdbcDataReader[0].ToString().Trim() ;
}
많은 어려움을 겪은 후에 내가 필요한 것을 얻었습니다. 하지만 필자가 작성한 코드가 무엇인지 이해하지 못한다. 왜 내가 "if 문"을 사용할 수 있습니까?
제가 코드를 잘 이해할 수 있도록 알려주십시오. 미리 감사드립니다.
'if'를 사용해 보셨습니까? ''while''과''if''의 결과의 차이점은 무엇입니까? – yogi
단일 값 쿼리에 관심이있을 때 ExecuteReader 대신 ExecuteScalar를 찾습니다. 또한 "using"문을보고 데이터베이스 리소스를 올바르게 정리하는 방법을 알아보십시오. –
"max() + 1"을 사용하여 시리얼의 "다음 값"을 얻는 것은 정말 나쁜 습관입니다. 2 명의 사용자가 동시에이 쿼리를 실행하면 어떤 일이 일어날 지 생각해보십시오. 동일한 시리얼을 얻을 것입니다 ... –