programing

phpmyadmin에서 외부 키를 만드는 방법

bestcode 2022. 10. 27. 21:57
반응형

phpmyadmin에서 외부 키를 만드는 방법

내 환자 테이블에서 doctorid를 외래열쇠로 만들고 싶다.

그래서 제가 테이블 > 기본 문제는 제가 테이블 > 구조 > 구조 > 구조 > 저는 기본 키를 만들 수 있습니다.또한이네이블이아닙니다.

두 개의 복합 키(medicid 및 patientid)가 있는 다른 테이블이 있어 두 개의 복합 키를 모두 변경할 수 있습니다.

환자 테이블에 있는 의사 ID 색인을 다른 것과 비교해야 하나요?환자 ID가 환자 테이블의 기본이므로 둘 다 기본 키가 될 수 없습니다. 의사는 외부 키입니다.

테이블

누구라도 도와줬으면 좋겠다

안부의 말

옛날 방식으로 할 수 있어다음과 같은 SQL 문을 사용하여

ALTER TABLE table_1_name
    ADD CONSTRAINT fk_foreign_key_name
    FOREIGN KEY (table_1_column_name)
    REFERENCES target_table(target_table_column_name);

예를 들어 다음과 같습니다.가지고 계신 경우books컬럼이 있는created_by이것은 칼럼을 참조한다.id…에.users테이블:

ALTER TABLE books
    ADD CONSTRAINT books_FK_1
    FOREIGN KEY (created_by)
    REFERENCES users(id);

이는 관련 테이블에 키가 이미 존재하는 것으로 가정합니다.

외부 키 제약 조건을 적용하려면 키를 인덱싱해야 합니다.그러기 위해서는, 순서에 따릅니다.

  1. 테이블 구조를 엽니다.(두 번째 탭)
  2. 다중 작업 옵션이 있는 마지막 열 작업을 참조하십시오.색인을 클릭하면 열이 인덱싱됩니다.
  3. 관계 보기를 열고 외부 키 제약 조건을 추가합니다.

이제 DOCR_ID를 외부 ID로 할당할 수 있습니다.

관계를 작성하려면 Storage Engine 테이블InnoDB여야 합니다.작업 탭에서 편집할 수 있습니다.스토리지 엔진 구성

그런 다음 기본 테이블의 id 열이 색인화되었는지 확인해야 합니다.구조 탭의 색인 섹션에 나타납니다.

인덱스 리스트

마지막으로 구조 탭에서 관계 보기 옵션을 볼 수 있습니다.편집 시 외부 테이블의 부모 열을 선택하여 관계를 만들 수 있습니다.

여기에 이미지 설명 입력

첨부 파일을 참조하십시오.이게 누구에게나 도움이 됐으면 좋겠어요.

작성하다categories테이블:

CREATE TABLE categories(
    cat_id int not null auto_increment primary key,
    cat_name varchar(255) not null,
    cat_description text
) ENGINE=InnoDB;

작성하다products표와 참조categories테이블:

CREATE TABLE products(
   prd_id int not null auto_increment primary key,
   prd_name varchar(355) not null,
   prd_price decimal,
   cat_id int not null,
   FOREIGN KEY fk_cat(cat_id)
   REFERENCES categories(cat_id)
   ON UPDATE CASCADE
   ON DELETE RESTRICT
)ENGINE=InnoDB;

작성하다vendors표 및 변경products테이블:

CREATE TABLE vendors(
    vdr_id int not null auto_increment primary key,
    vdr_name varchar(255)
)ENGINE=InnoDB;
 
ALTER TABLE products 
ADD COLUMN vdr_id int not null AFTER cat_id;

외부 키를 추가하려면(참조)vendors테이블)에서productstable에서는 다음 문을 사용합니다.

ALTER TABLE products
ADD FOREIGN KEY fk_vendor(vdr_id)
REFERENCES vendors(vdr_id)
ON DELETE NO ACTION
ON UPDATE CASCADE;

키를 떨어뜨리려면 , 다음의 순서에 따릅니다.

ALTER TABLE table_name 
DROP FOREIGN KEY constraint_name;

phpmyadmin의 구조 탭으로 이동에서 아래 그림과 같이 관계 보기를 선택합니다.여기서 외부 키 제약 이름, 현재 테이블 열, 외부 키 데이터베이스, 테이블 및 열을 추가하기 위한 표 형식 양식을 찾을 수 있습니다.

여기에 이미지 설명 입력

언급URL : https://stackoverflow.com/questions/37615586/how-to-create-a-foreign-key-in-phpmyadmin

반응형