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
운영게시판
최근게시물
MySQL Q&A 31103 게시물 읽기
No. 31103
사람별 AUTO_INCREMENT증가 테이블 생성 질문
작성자
권순환(soonani82)
작성일
2017-08-16 14:03
조회수
4,585

--사람별 AUTO_INCREMENT증가 테이블 생성 질문

 

안녕하세요. AUTO_INCREMENT 옵션을 사용을 처음해보는 mysql 초보입니다.

테이블에 AUTO_INCREMENT 옵션이 있는 컬럼이 있으면 데이터 인서트될때 증가기준에 의해서 키가 생성된다는것

까지는 이해하고 있는데요.

 

컬럼(사람, 자동증가값)이 2개 있고, 키가 2개인경우 컬럼(사람)별로 증가값이 생성되었으면 좋겠는데

어떻게 해야되는줄 모르겠어요.

 

결과데이터

사람 / 자동증가값(AUTO_INCREMENT)

홍길동 / 1

홍길동 / 2

김철수 / 1

김영미 / 1

김영미 / 2

김영미 / 3

 

게시물이 하나 증가될때 마다 사람별로 증가값을 키우고싶은데 방법좀알려주세요.

혹시나 방법이 없으면 없다고말씀해주세요ㅠ.ㅠ

 

지금현재는 사람별로 게시물최대값을 계산하여 증가하고 있습니다.

 

 

CREATE TABLE `T_NO_NOTICE` (

`usno` int(11) NOT NULL COMMENT '유저 고유번호 작성자',

`nono` int(11) NOT NULL COMMENT '게시물 고유번호 (MAX값 + 1)', #증가값으로 처리시 구문에러 발생

PRIMARY KEY (`usno`,`nono`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

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

 방법이 없습니다.

 

그리고 MySQL은 클러스터 테이블이라

위와 같은 PK 구조를 사용하면

데이터가 많아지면 Insert시 테이터 재정렬 부하로 인해 

속도가 느려질 수 있습니다.

박인호(paerae)님이 2017-08-16 15:05에 작성한 댓글입니다.

감사합니다.

키문제를 생각하닥보니..

 

오라클에서 테이블명은 하나인데 키(월, 사람, 등..)에 의해서 파티셔닝(키[구분값]으로 테이블 물리적 생성) 기능이 있는걸로 아는데요. 혹시 mysql에도 그런기능이 있나요?

 

이런기능이 있으면 사람+max 값 키로 사용해도될거같은데 괜찮은 방법일까요?

지금은 개발초창기이고 데이터는 많이 들어온다고 가정하고 만들고 있어요.

 

권순환(soonani82)님이 2017-08-16 17:31에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
31106MariaDB 서버연동.. 질문할게요.. [1]
김민호
2017-08-20
4463
31105키와 파티셔닝과의 관계 및 키설정에 대한 조언 부탁드립니다. [5]
권순환
2017-08-16
5198
31104mysql 버전에 의해서 with 문 사용 불가능 한경우 있나요? [2]
권순환
2017-08-16
5003
31103사람별 AUTO_INCREMENT증가 테이블 생성 질문 [2]
권순환
2017-08-16
4585
31102데이터 모델링 중 테이블의 건수에 관한 궁금증 [1]
우코아
2017-08-09
4555
31100구구단예제있나요? [1]
쏘쏘
2017-08-07
4889
31099mysql 원격접속에 관련해서 질문드려요ㅠㅠ [1]
반지
2017-08-06
4705
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다