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 25681 게시물 읽기
No. 25681
테이블 생성 시 FOREIGN 키 문제...
작성자
장대원(dwjang)
작성일
2006-07-30 00:50
조회수
2,070

안녕하세요. 지난번에도 여기에 질문을 올려서 도움을 받았는데 또 한가지 문제가 생기게 되어 도움 부탁 드립니다.

 

아래쪽의 sql을 실행하면 다음과 같은 에러 메시지가 뜹니다. 무슨 원인일까요?

 

Can't create table '.\code\#sql-aa8_3f.frm' (errno: 150)

 

DROP TABLE IF EXISTS o_code CASCADE;
CREATE TABLE o_code
(
id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NULL,
value VARCHAR(50) NULL,
priority INTEGER NULL,
description VARCHAR(1000) NULL,
type INTEGER NULL
);

ALTER TABLE o_code ADD (FOREIGN KEY (type) REFERENCES o_code ON DELETE SET NULL);

 

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

FOREIGN KEY 를 만들때 REFERENCES 뒤에는 참조할 테이블이 와야하지 않나요? 제가 알기로는 참조 컬럼은 널값이 안되는 걸로 아는데 한번 확인해 보고 해보세요.

정왕균(areakr)님이 2006-07-31 10:27에 작성한 댓글입니다.

 

alter쪽에 reference쪽의 해당 column이 정의되지 않아 어떠한 것을 fk로 할 지 몰라서 내는 에러인 것 같습니다.

 

내용을 보면 id가 type의 부모키 같은데, 그렇다면 다음과 같이 해주시면 될 것입니다.

 

ALTER TABLE o_code ADD FOREIGN KEY (type) REFERENCES o_code(id) ON DELETE SET NULL;

송장원(jnjill)님이 2006-07-31 17:00에 작성한 댓글입니다.
이 댓글은 2006-07-31 17:00에 마지막으로 수정되었습니다.

헛!!!

정말 감사 드려요. 말씀 대로 컬럼 설정이 안되서였군요.

DB 초보라 앞으로도 많은 도움 부탁 드릴께요~

행복 하루 보내세요~

장대원(dwjang)님이 2006-08-02 07:34에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
25686mysql error가 쌓이고 있는데
차가운바람
2006-08-01
2052
25684UTF8환경 웹상에서와 클라이언트 상에서.. [1]
Julia
2006-08-01
2437
25682음력 DB를 UTF8로 셋팅된 DB에 넣는 방법을 알고싶습니다. [1]
윤완식
2006-08-01
2395
25681테이블 생성 시 FOREIGN 키 문제... [3]
장대원
2006-07-30
2070
25680테이블 생성시 발생하는 문제 [1]
박상용
2006-07-29
1559
25678검색한 값을 제외하여 출력하려면..?? [2]
이연희
2006-07-28
1414
25677제게는 아직 미결된 text필드타입문제 다시 올립니다.
띠띠리
2006-07-26
1884
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다