Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
[초보자]DB의 번호 자동 증가..
시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요.
코드의 값이 자동적으로 1씩 증가하여 사용자가 입력할 경우 코드번호는 신경 쓰지 않도록 하고 싶습니다.
방법좀 알려주세요..
2
COMMENTS
장지용
•
2000.05.03 03:34
정수현 wrote:
> 시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요.
> 코드의 값이 자동적으로 1씩 증가하여 사용자가 입력할 경우 코드번호는 신경 쓰지 않도록 하고 싶습니다.
> 방법좀 알려주세요..
코드번호가 char 인 경우
아래와 유사한 함수를 만들어서 등록시 Param 으로 넘기면 될 것 같습니다.
Query.ParamByName('코드번호').AsString := GetMaxNo;
function TMain.GetMaxNo : String;
begin
with Query do begin
Close;
Sql.Clear;
Sql.Add('Select Max(코드번호) From [테이블명] ');
Prepare;
Open;
// 코드번호 최대값에 하나 증가한 번호 부여
// Fields[0] -> Max(코드번호)
if Fields[0].AsString = '' then
Result := '01'
else
// '00' -> char(2) 인 경우
// '01', '02', '03', ..., '10', '11', ... 식으로 저장
Result := FormatFloat('00', Fields[0].AsInteger + 1);
Close;
end;
end;
0
0
삭제
수정
댓글
까마귀
•
2000.05.03 02:29
정수현 wrote:
> 시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요.
> 코드의 값이 자동적으로 1씩 증가하여 사용자가 입력할 경우 코드번호는 신경 쓰지 않도록 하고 싶습니다.
> 방법좀 알려주세요..
안녕하세요. 까마귀입니다.
Local에서 하시는지 Server에서 하시는지는 잘 모르겠는데요.
db종류에 따라 그런 기능이 있는게 있고 없는것도 있어요.
RDBMS에는 다 있다고 본것 같고요 - 저는 MS-SQL밖에 못 써봐서... - Local의 경우 파라독스에서는 그런 기능이 있고요, dBase에는 없는걸로 압니다.
기능이 있을 경우는 db설계시 자동 증가형으로 잡으면 되겠고요, 아닐 경우 마지막 레코드의 no필드의 값을 읽어서 + 1 하거나, 레코드의 총수 + 1을 하시면 되겠네요.
위대한 단군혼이 살아있는 나라.... 대한민국.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
한시바삐!!
•
2000.05.03 06:28
1
COMMENTS
/
0
LIKES
필드에서 누적되는 계산을 하고 싶은데..급합니다 도와주세요
공성환
•
2000.05.03 08:11
한시바삐!! wrote: > 어떤 테이블에 숫자가 들어오고, 그 숫자들이 계속 들어오면 누적되어 옆테이블에 입...
이영범
•
2000.05.03 06:24
2
COMMENTS
/
0
LIKES
파라독스 데이터 베이스를 사용하면서 문제점....
김태형
•
2000.05.03 18:57
입력했던 레코드가 사라지는 것은 BDE가 사용하는 캐쉬 때문입니다. 그러므로 레코드가 Post될 때마다 하...
오현수
•
2000.05.03 07:32
이영범 wrote: > 저는 파라독스 DB를 사용하고 있습니다. > 그런데 델파이 프로그램을 사용하다가 다운이...
이영범
2000.05.03 06:22
0
COMMENTS
/
0
LIKES
퀵리포트에서 엑셀 저장이 .......
usb포트와 통신할 수
2000.05.03 05:17
0
COMMENTS
/
0
LIKES
분류먼저 해주시길 부탁드립니다.
어린왕자
•
2000.05.03 04:35
8
COMMENTS
/
0
LIKES
스플리터 사용하는데..문제가..
최용일
•
2000.05.03 04:44
어린왕자
•
2000.05.03 05:38
최용일
•
2000.05.03 05:45
어린왕자
•
2000.05.03 05:55
최용일
•
2000.05.03 06:04
어린왕자
•
2000.05.03 06:09
어린왕자
•
2000.05.03 06:06
• • •
최진석
•
2000.05.03 04:30
1
COMMENTS
/
0
LIKES
treeview응용에 관련된 질문입니다.
최용일
•
2000.05.03 05:22
안녕하세요. 최용일입니다. 아마도 다른것은 다되는데 시차계산만 안되시는 것 같습니다. var Cur...
델맨
•
2000.05.03 04:13
1
COMMENTS
/
0
LIKES
이런error 봤나요?
한창희
•
2000.05.03 07:08
델맨 wrote: > project xxx.exe raised exception class edbengineerror > with message 'key violation....
김일영
•
2000.05.03 03:12
2
COMMENTS
/
0
LIKES
Reference를 Release해도 Garbage가 생깁니다.
최용일
•
2000.05.03 03:39
안녕하세요. 최용일입니다. GetOleFont(TFont.Create, OleFont); Font를 생성하여 곧바로 OleFont로 사...
김일영
•
2000.05.03 05:32
답변 감사합니다. GetOleFont보니까 Font 개체에 Adapter를 붙여서 IFontDisp를 돌려주는 식이라, IFontD...
정재헌
•
2000.05.03 03:12
1
COMMENTS
/
0
LIKES
필드가 똑 같은 테이블에서 레코드 이동
까마귀
•
2000.05.03 03:44
정재헌 wrote: > 문제는 간단한데 방법을 모르겠습니다. > > 사원 테이블에서 퇴사를 하면 퇴직 사원 ...
정수현
•
2000.05.03 03:04
1
COMMENTS
/
0
LIKES
sql관련 질문입니다.
김일영
•
2000.05.03 04:19
sql이라 함은 TQuery.SQL을 말씀하시는 것 같군요. 이건 TStrings입니다. string의 리스트에다 메소드를 ...
조광석
•
2000.05.03 03:03
2
COMMENTS
/
0
LIKES
QReport 문젠데요...너무합니다..
윤종필
•
2000.09.23 18:49
안녕하세요. 이거 읽어 보실지 모르겠네요. 저도 꼭 같은 문제로 고민하고 있습니다. 도무지 원인을 모르...
aaa
•
2000.05.03 03:21
안녕하세욧..^^ 퀵레포트에서 네트웍 출력을 하셨는지 궁굼하군요.. 퀵레포트에서 네트웍으로 프린팅...
지승현
•
2000.05.03 02:41
1
COMMENTS
/
0
LIKES
Maskedit에관하여
조광석
•
2000.05.03 03:12
지승현 wrote: > 안녕하세요. 고수님들. > Maskedit를 쓰다가 의문이 생겨 이렇게 문을 차고 들어왔습니...
구철수
2000.05.03 02:40
0
COMMENTS
/
0
LIKES
TEdit의 MaxLength 셋팅?(유니코드형식)
어린왕자
2000.05.03 02:29
0
COMMENTS
/
0
LIKES
트리뷰노드 드래그할때 Selection을 안움직이게 하는 방법..아이디어좀 주세요..
까마귀
•
2000.05.03 02:23
1
COMMENTS
/
0
LIKES
Join Query에서 Update 문제...
윤석천
•
2000.05.03 02:36
그러시다면, updatesql을 쓰실 수 있는 것으로 기억하는데요? 혹시 design시 Tupdatesql에서 insert, dele...
정수현
•
2000.05.03 02:16
2
COMMENTS
/
0
LIKES
[초보자]DB의 번호 자동 증가..
시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요. 코드의 값이 자동적으로 1씩 증가하여 사용자가 입력할 경우 코드번호는 신경 쓰지 않도록 하고 싶습니다. 방법좀 알려주세요..
장지용
•
2000.05.03 03:34
정수현 wrote: > 시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요. > 코드의 값이 자...
까마귀
•
2000.05.03 02:29
정수현 wrote: > 시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요. > 코드의 값이 자...
봉갈천
•
2000.05.03 02:10
1
COMMENTS
/
0
LIKES
단축키(예: Ctrl+Alt+Backspace)정의 관련
최용일
•
2000.05.03 03:07
안녕하세요. 최용일입니다. 전역핫키를 사용하세요. 아래 찾아보시면 예제가 많이 있습니다. ^^ 항상...
이인숙
•
2000.05.03 02:09
3
COMMENTS
/
0
LIKES
리스트박스에 수직정렬을 할 수 있나요?
최용일
•
2000.05.03 03:54
안녕하세요. 최용일입니다. ListBox1.Sorted := True; ^^ 항상 즐코하세요. 이인숙 wrote: > ...
이인숙
•
2000.05.03 04:32
최용일 wrote: > 안녕하세요. 최용일입니다. > > ListBox1.Sorted := True; > > ^^ 항상 즐코하세...
최용일
•
2000.05.03 05:34
안녕하세요. 최용일입니다. 제가 이해력이 딸려서 수직정렬이란 말을 이해를 못하겠군요. 문자가 수...
어린왕자
•
2000.05.03 02:02
1
COMMENTS
/
0
LIKES
[대답아님] 한영키를 죽이는 방법을 하시면..근데 전 모름..
Jae Lee
•
2000.06.02 08:10
* StringGrid 의 키를 누를시의 이벤트를 사용하시기 바랍니다. 다음은 숫자와 +,- 사인, 그리고 백스페이...
어린왕자
•
2000.05.03 01:57
1
COMMENTS
/
0
LIKES
[요청] ADO컴포넌트 소스좀 바꿔죠요...엑세스디비 그림 못읽음.
조규춘
•
2000.05.03 02:07
어린왕자 wrote: > 안녕하세요..요즘 엑세스디비가지구 질절머리나게 가지구 노는 어린왕자입니다.. > 근...
정수현
2000/05/03 02:16
Views
144
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 시퀀스를 싸다보니 자릿수가 안 맞고 원하는 값이 나타나지 않아서요.
> 코드의 값이 자동적으로 1씩 증가하여 사용자가 입력할 경우 코드번호는 신경 쓰지 않도록 하고 싶습니다.
> 방법좀 알려주세요..
코드번호가 char 인 경우
아래와 유사한 함수를 만들어서 등록시 Param 으로 넘기면 될 것 같습니다.
Query.ParamByName('코드번호').AsString := GetMaxNo;
function TMain.GetMaxNo : String;
begin
with Query do begin
Close;
Sql.Clear;
Sql.Add('Select Max(코드번호) From [테이블명] ');
Prepare;
Open;
// 코드번호 최대값에 하나 증가한 번호 부여
// Fields[0] -> Max(코드번호)
if Fields[0].AsString = '' then
Result := '01'
else
// '00' -> char(2) 인 경우
// '01', '02', '03', ..., '10', '11', ... 식으로 저장
Result := FormatFloat('00', Fields[0].AsInteger + 1);
Close;
end;
end;