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 4469 게시물 읽기
No. 4469
alter table을 이용한 테이블 제약조건 질문있어요~
작성자
케이
작성일
2008-10-06 19:02
조회수
5,829

ms sql을 갓 배우기 시작했는데 .. ;; 너무 어렵네요,,


아무튼 .. 제가 처한 상황을 말해보자면 이렇습니다.


디비를 생성하고, 테이블들을 create하고(기본키, 참조키가 조금씩 있구요 ..), 거기에

insert into로 값을 넣었었습니다.


그런데 이제 alter table을 이용해 제약조건을 추가해야 하고

 그 내용이 참조당하는 키가 삭제되거나 수정되거나 할때 처리하는


alterl table 머머머

add constraint 머머머 

on update set null, on delete cascade, 같은걸 해줘야 합니다.


제가 뭐 소스를 짜달라는게 아니라 .. 궁금한점이, 제 친구는 했다고 해서 친구걸 잠깐 보니


디비 생성 -> 테이블 생성->위에 3줄 alterl부터 ~ cascade까지 -> 데이터 인서트->테스트 구문

의 단계로 풀었던데요 ..


이게 순서가 원래 상식적으로 정상이

디비 생성->테이블생성->데이터 인서트->alterl ~ cascade까지->테스트구문 식으루 되야 될것 같아서요 ..


그러니까 스키마를 정해서 그대로 디비를 구현한 후 사용하다가 도중에 변경사항이 생기면

그때 데이터가 들어있는 상태에서도 변경이 가능해야 될것 같다는게 제 생각이거든요 ..


답이 안나와서 이러구 끙끙 앓고 있습니다. 도와주세요 ^^;

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

참조키를 먼저 설정하느냐 아님 나중에 설정하는냐의 문제일뿐인데요...
둘다 환경에 따라 달라 질수는 있을것 같구요.... 상식에 벗어났다고는 할수 없을 것 같습니다. 
저는 전문 DBA가 아니라 전문적으로 접근은 힘듭니다. 이점 양해하시기 바랍니다. 

저 같은 경우 참조키의 제약 조건은 개발 초기에는 적용하지 않고 개발후에 이런 제약조건을 
겁니다.  

디비 생성->테이블생성->데이터 인서트->alterl ~ cascade까지->테스트구문  

--> 데이터를 먼저 인서트 했기 때문에 나중에 제약 조건을 걸게되었을 경우 제약조건을 위배한 건 때문

에 에러가 나오는 경우가 있습니다. 이런경우 데이타의 정리가 필요하게 됩니다.

zz님이 2008-10-09 11:50에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
4472중복데이타 안불러오기.. [1]
음악소년
2008-10-08
5219
4471< MS -SQL에서 등록된 Record에서 가장 빠른 것을 찾은 다음에..> [3]
초보자
2008-10-08
5226
4470최대 허용 시간을 초과했습니다라는 메시지뜰때 [1]
궁금
2008-10-07
6794
4469alter table을 이용한 테이블 제약조건 질문있어요~ [1]
케이
2008-10-06
5829
4468MS-SQL 2000 엔터프라이즈와 스탠다드의 호환? [2]
초보
2008-10-03
5794
4467MS-SQL에서 중복된 DATETIME 비교하여 나타내는 방법을 잘모르겠어요..고수님들 도와주십쇼ㅠㅠ [3]
2008-10-02
6083
4466MS-SQL 라이센스 관련...(CAL) [1]
GMKJH
2008-09-29
6845
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다