티스토리 뷰

Imports System.Data.Odbc

Dim DR As OdbcDataReader = Nothing
Dim BUSI_NO = ""

strSql = ""
strSql &= vbCrLf & " SELECT BUSI_NO"
strSql &= vbCrLf & " FROM   TB_GRPINF"

DR = fncTranSelectDR(strSql, dbConn, dbTran)

DR.Read()
BUSI_NO = DR!BUSI_NO 

'중복 여부 확인
If BUSI_NO = Replace(TextBox3.Text, "-", "") Then
    MessageBox.Show("사업자번호가 이미 존재합니다. 다른 번호를 입력해주세요.")
    Return
End If

 

여기서 이렇게 작성을 하고 디버깅 작업을 거쳤는데 

나는 BUSI_NO 데이터를

1111111111

으로 넣었지만

 

SELECT 문에서 WHERE절 조건을 주지 않았기 때문에 BUSI_NO에서 랜덤값을 가져온거거나 제일 첫번째에 있는 데이터를 가져와 중복인지 아닌지 체크한 것 같다. 

 

 

그래서 디비로 확인을 해보면

SELECT BUSI_NO
FROM   TB_GRPINF
WHERE  BUSI_NO = '1111111111'

DR에 strSql문이 이렇게 들어가줘야 디비에서도 중복된 데이터를 찾을 수 있는 것이다. 

 

 

strSql = ""
strSql &= vbCrLf & " SELECT BUSI_NO"
strSql &= vbCrLf & " FROM   TB_GRPINF"
strSql &= vbCrLf & " WHERE  BUSI_NO = '" & BUSI_NO & "'"


strSql = ""
strSql &= vbCrLf & " SELECT BUSI_NO"
strSql &= vbCrLf & " FROM   TB_GRPINF"
strSql &= vbCrLf & " WHERE  BUSI_NO = '" & Replace(TextBox3.Text, "-", "") & "'"

 

위에 sql구문을 썼을때 당연히 where 조건에 데이터는 ' '로 된다.

입력받은 데이터를 가져오지 않았기 때문이다. 

그래서 디버깅해보고 sql구문을 보고 디비에서 어떻게 해야 데이터가 나오는지 돌려보면 좋을 것 같다.

그래서 결국 최종적으로 내가 받는 데이터의 포맷을 제거한 데이터가 검색되고

그 검색된 데이터가 중복인지 아닌지 메세지까지 잘 띄워지는 것을 볼 수 있다. 

 

 

중복되는 데이터는 메세지가 잘 띄워졌고 

이 이후에 중복되지 않은 데이터를 넣었을 때 행/열에 관한 데이터가 없다는 오류가 떴다.

다음 포스팅에서 이어서 써야겠다. 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함