하고자 하는 내용은
동이름을 입력하면 동이름이 포함된 주소 찾기 입니다.
asp.net은 아니구요. 윈도우 폼입니다.
자세한 과정은 "동이름 입력 -> 검색 -> 동이름을 포함한 주소 보여주기"입니다.
코드는 다음과 같구요.
----------------------------------------------------------------------------------
{
// 검색을 위한 연결 설정
//SqlConnection conn=new SqlConnection(); // 커넥션 객체 생성
//conn.ConnectionString="server=cw; uid=sa; pwd=1111; database=aspnet"; // 커넥션 설정
// 동이름 검색 매개변수 설정
dong_result.Items.Clear(); // 검색 버튼 클릭 시 기존 검색 결과 지우기
SqlParameter dong=new SqlParameter(); // 매개변수 객체 생성
dong.ParameterName="@dong"; // 매개변수 이름 선언
dong.SqlDbType=SqlDbType.VarChar; // 매개변수 타입 설정
dong.Value=dong1.Text; // 매개변수 값 설정
// 동이름 검색 쿼리 작성
SqlCommand search_cmd=new SqlCommand(); // 쿼리 객체 생성
search_cmd.Connection=new SqlConnection("server=cw; uid=sa; pwd=1111; database=aspnet"); // 검색 쿼리 연결
search_cmd.CommandText="select zipcode,dong,juso from zipcode "; // 검색 쿼리 작성
search_cmd.CommandText+="where dong like '%"+@dong+"%'";
MessageBox.Show(search_cmd.CommandText);
search_cmd.Parameters.Add(dong);
// 커넥션 시작
search_cmd.Connection.Open();
SqlDataReader search_result=search_cmd.ExecuteReader();
while(search_result.Read())
{
dong_result.Items.Add(search_result["dong"]);
//dong_result.Items.Add(search_result["zipcode"]);
//dong_result.Items.Add(search_result["juso"]);
}
// 커넥션 종료
search_cmd.Connection.Close();
}
----------------------------------------------------------------------------------
궁금한 것은
where 문에서 like를 이용하여 쿼리를 작성할 경우
올바른 문법을 알고 싶어요.
부탁드립니다.~
첫댓글 주소 검색이 안되요
"select zipcode, dong, juso from zipcode where DONG LIKE '%"+@dong+"%'" 이게 맞지 않을까요?
아참 그렇게 했습니다. 위에것은 쿼리가 제대로 전송되나 확인해 본것이구요. 수정할게요.
select (zipcode + ' ' + dong + ' ' + juso) 아니면 select (zipcode + "' '" + dong + "' '" + juso)로하면 하나로 붙어서 나옵니다.되는지 안되는지는 해볼 수가 없어서 모릅니다;;
쩝.. @dong은 SQL 변수입니다. 그러니 쿼리문과 구분될 필요가 없이 하나로 써야겠죠. "select zipcode, dong, juso from zipcode where dong like '%@dong%'" 이렇게 쓰시면 될듯...
글구 참고로 쿼리문장에 변수를 쓸 때는 굳이 @dong처럼 할 필요는 없고 그냥 물음표로 대체해도 됩니다. "select * from zipcode where dong like '%?%'" 이렇게 하고 Parameters 컬렉션에 파라미터를 넣으면 물음표의 위치와 매치되는 파리미터 값이 적용됩니다.
답변 감사드립니다. 꾸벅~ ^^;
저도 감사드립니다~ 꾸벅~