ERD란 ? Entity Relationship Diagram으로 개체의 관계를 다이어그램으로 만들어 보여주는 것으로 , 테이블 간이 관계를 도식화했다고 보면 된다. ERD 생성하는 법 ERD를 생성할 데이터베이스에서 Ctrl + R 을 누르면 Reverse Engineer Database 창이 나온다 ( 원래는 프로젝트를 하기 전에 ERD를 생성하는 편이며 데이터를 생성후에 하는 것이라 Reverse가 붙었다고 들었다 )
Primary Key로 id 같은 고유의 값을 가져야 할때가 있다. 예를 들어 회원가입을 할때 유저번호가 다 달라야 하는 것처럼 숫자가 필요할 때 같은 경우다. -- id 컬럼에 자동 번호 적용하기 drop table if exists board4; create table board4( id bigint auto_increment, -- 글번호 board4_writer varchar(20) not null, -- 작성자 board4_contents varchar(500), -- 내용 constraint pk_board4 primary key(id) -- auto_increment를 사용하는 것은 key로 지정되어야한다. ); id에 auto_increment를 적용시켰는데 , 한가지 주의점이 있다. au..
Update MySQL에서는 update 문을 이용해서 레코드의 내용을 수정가능하다. update 문은 해당 테이블에서 where 절의 조건을 만족하는 레코드의 값만 수정한다. drop table if exists board3; create table board3( id bigint, -- 글번호 board3_writer varchar(20) not null, -- 작성자 board3_contents varchar(500), -- 내용 constraint pk_board3 primary key(id) ); drop table if exists comment3; create table comment3( id bigint, -- 글번호 comment3_writer varchar(20) not null, --..
delete에 대해서 delete는 테이블 내에 레코드를 삭제 할 때 사용하는 명령어다. ID 이름 학번 1 김자바 SUM1 2 이자바 SUM2 학생들의 레코드가 위와 같은 테이블이 있다고 할때 delete를 사용하면 조건에 따라 하나씩 지우거나 모두 지우는 것이 가능하다. 하지만 여러개의 테이블이 foreign key로 묶여있는경우 어떤 테이블의 정보가 다른 테이블과 foreign key로 묶여있을때 delete 명령어를 사용하면 에러가 나는데 , error 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails 에러를 자세히 보면 foreign key로 묶여있기 때문에 삭제할 수 없다고 한다. 부모 쪽의 데이..
1. 참조 관계에 대해서 참조 관계 부모 테이블 , 자식 테이블 개념으로 , 부모가 없는 자식 데이터는 있을 수 없다. ( 참조할 데이터가 없기 때문 ) 하지만 부모 테이블과 자식 테이블을 모두 생성하고 참조 관계를 맺었는데 부모 데이터를 삭제한다면 ( 조건 : cascade 속성 사용한다면 ) 자식 테이블은 고아 객체가 된다. 2. 관계 1. 1:1관계(일대일) 하나의 레코드가 다른 테이블의 레코드 한개와 연결된 경우이다. 2. 1:N관계(일대다) ( 주로사용 ) 하나의 레코드가 서로 다른 여러 개의 레코드와 연결된 경우이다. 만약 User 테이블에 ID(int) , name(varchar) 칼럼이 있다고 하고 phonebook 테이블에 ID(int) , phone_number(varchar) , us..