database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 705 게시물 읽기
No. 705
급합니다. 이거 함 봐주세요...
작성자
정재영(ocxdll)
작성일
2003-02-06 10:21
조회수
5,786

VB로 생성한 값을 DB에 넣을때 DB에 값과 비교하여 중복되는 값이 있으면 중복된 값만큼 다시 생성해 정확한 갯수의 값을 디비에 넣고 싶습니다...

 

 

 

VB에서요 다음과 같이 COMBO3에 100개의 랜덤값을 생성하거든요..그리고 DB에 INSERT 시킵니다.

다음과 같이 랜덤값 생성시 만약 중복되는 값이 있으면 중복된 값의 갯수만큼 루프를 돌아 정확하게 100개가 생성됩니다.

이값을 DB에 INSERT 시킬경우 일단 SELECT로 현재 저장되어 있는 랜덤값을 가져와 비교해

중복된값이 있다면 중복된 값만큼 추가로 랜덤값이 생성되어 100개의 랜덤값을 정확하게 입력하고 싶습니다.

VB소스에서는 랜덤값을 구할때 중복되는 수만큼 루프를 돌아 정확하게 100개를 만드는데 이걸 DB에 입력할경우에

 

현재까지 저장되어 있는 DB와 비교를 하여서 정확하게 100개를 입력해야 하는데 어떻게 하면 될찌... 소스보시고 변경좀 부탁드릴게요 ^^;;

cardkey <-- 랜덤값이구요 PK로 설정 되어 있습니다.

또한 무조건 100개의 값이 들어가야 하거든요.

 

For k = 1 To Combo3.Text

Do

str = Chr(Int(Rnd() * 25 + 65)) & Format(Int(Rnd() * 10000000), "0000000")

 

Loop While InStr(strtmp, str)

List1.AddItem str

strtmp = strtmp & str & "|"

Next k

 

Set rs = New ADODB.Recordset

For i = 0 To List1.ListCount - 1

isql = "Insert INTO PNGLICENSE (cardindex, cardkey, keyused, timeleft, sumofmoney, publishdate) values

(cardindex.NextVal,'" + List1.List(i) + "','0','" + Combo2.Text + " ','" + Combo1.Text + "', sysdate)"

 

AdoCnn.Execute isql

Next i

이 글에 대한 댓글이 총 1건 있습니다.

지생각인데... 이러면 될것 같은데..

어차피 키값이 PK라면 PK가 중복이 되면 오류가 나겠죠

무조건 INSERT를 시키고 쿼리에 에러값이 나오면 그값으로 처리를 하면 될것 같네요..

 

넘 엉뚱한건가..ㅋㅋ

 

sw = false

 

For i = 0 To 100 - 1

 

do

str = Chr(Int(Rnd() * 25 + 65)) & Format(Int(Rnd() * 10000000), "0000000")

 

isql = "Insert INTO PNGLICENSE (cardindex, cardkey, keyused, timeleft, sumofmoney, publishdate) values

(cardindex.NextVal,'" + List1.List(i) + "','0','" + Combo2.Text + " ','" + Combo1.Text + "', sysdate)"

AdoCnn.Execute isql

 

if sqlcode = 0 then

sw = true

end if

 

loop while ( sw = true)

sw = false

Next i

ㅋㅋㅋ님이 2003-02-07 14:38에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
708오라클 -&gt; MS-SQL 이전 문제...
이근웅
2003-02-06
4365
707디비서버 하드용량이 없어여.. [2]
질문녀
2003-02-06
4751
706ODBC DSN
초보
2003-02-06
4267
705급합니다. 이거 함 봐주세요... [1]
정재영
2003-02-06
5786
704산술 오버플로 에러가 납니다. [1]
성시원
2003-01-30
4933
703급질문) 도스모드에서의 데이터베이스 백업 [2]
급질문
2003-01-29
5355
701디비 백업 쉽게 백업하는 방법 [2]
초보자
2003-01-27
6582
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다