본문 바로가기

이론/DB

[DB] 데이터베이스 ER 다이어그램 - (1) *다른 필기* 0517 -p5 커스터머라는 앤티티가 모든 쇼핑몰에 있을 것이다. 안에 있는건 앤티티의 속성들 속성 설명 중.. -p6 애트리뷰트는 같은데 값이 다른거임 er모델에서는 애트리뷰트가 타원으로 표시됬었음 요즘애는 사각형으로 표현 -p7 학번이 앤티티인지 애트리뷰트인지 철학적 문제 정확한 답은 없다 주소정보를 어떻게 이용할 것인지 용도에 따라서 앤티티 vs 애트리뷰트 주의해야할 점 - 애트리뷰트는 다중 값을 가질 수 없다(set-valued = multi-valued) 구조가 중요하다//주소를 여러가지 형태(구조화된 검색)로 써야한다면 -p8 오리지널 er다이어그램 개체하나 그리는데 화면이 꽉 찼다 er모델링에서는 기본키 대신에 식별자라는 말을 많이 쓴다 -p10 Composite identif.. 더보기
[DB] 데이터베이스 모델링, E-R 다이어그램 E-R 다이어그램 교수라고 하는 개체 타입의 키는 교수번호이다. relation관계를 지도, 강의, 과목 세 개로 잡아주고 있다. 지도라는 관계는 1:N의 카디널리티를 가진다. 한명의 교수가 여러명의 학생을 지도한다. 교수와 과목은 강의라는 1:N관계를 가지는데, 교수 한명이 여러 과목을 강의할 수 있다. DB강의가 두번 강의 하는 것을 표현하지 않았다. 한 교수가 한 과목을 강의한다로 표현한 거다. 과목은 강의가 한 번만 있어야 한다. 위 시스템은 현 시스템과 맞지 않다. 이렇게 해야 한 강의가 과목이 여러 개 있다는 것을 표현할 수 있다. 기말고사에 , requirement에 따라 E-R다이어그램을 그리고 테이블로 관계형 데이터베이스로 변환하는 것이 50점이다. 다원관계: 두개가 아니라 여러개의 개체.. 더보기
[DB] SQL - (4) View SQL뷰는 기본테이블을 들여다보는 유리창이다. 뷰란, 하나또는 둘이상의 기본테이블로부터 유도되어 만들어지는 가상 테이블이다. with check option : 뷰에 소속되지 않은 데이터 삽입 / 업데이트 / 삭제 못한다. with read only : 기본 테이블의 변경연산이 불가하다. 뷰는 하나의 테이블처럼 사용된다. insert into cstudents (sno, sname, year) values (100, 'Hong', 3); //이것을 삽입시켜보자. create view cstudents (sno, sname , year) as select sno,sname,year from students where dept = '컴퓨터' with check option; with check option .. 더보기
[DB] SQL - (3) 중간고사 이후시간이다. 이제까지 배운것은 대학데이터베이스가 설계되어있을 때의 쿼리문을 작성하는 것이였다. 이제 하반기에는 데이터베이스가 어떻게 만들수 있는지 설계부분에 중점을 둬서 공부를 하게 될 것이다. 데이터베이스 설계도 DBA가 가져야 할 스킬이다. 데이터베이스 갱신에 대한 SQL을 다시 해볼거다. 데이터 갱신은 테이블에 조건에 맞는 튜플에 대해서 애트리뷰트 값을 변경시킬 수 있다. UPDATE 테이블 SET { 열이름 = 산술식 } [ WHERE 조건] ; 하나의 튜플에 대해서 업데이트한 예 UPDATE STUDENT SET year = 2 WHERE sno = 300; 복수의 튜플 변경 UPDATE COUSE SET Credit = Credit + 1 WHERE dept = '컴퓨터'; 부속 질.. 더보기
[DB] SQL - (2) sql문 실행시 내부적으로 튜플이 움직이는 구조를 해석할 수 있어야한다. 구조를 이해하는지 못하는지 테스트 할거다. IN의 부속 질의를 보았다. select s.sname from students s, enrol e where s.sno = e.sno and e.cno = 'C413'; C413의 과목을 등록하지 않은 학생의 이름을 구하라.(JOIN으로 구할 수 없다.) IN, NOT IN , JOIN을 잘 구분하자 (** 중간고사 시험 **) IN은 JOIN이랑 똑같은 의미이다. 정기태학생과 같은과 학생의 이름과 학과를 검색하라. 이것은 조인으로도 가능하다. select s1.sname , s1.dept from students s1, students s2 where s1.dept = s2.dept a.. 더보기
[DB] 데이터베이스 스키마/카탈로그 [ 3단계 데이터베이스 ] 1) 외부 스키마 (external schema, sub-schema) : 집주인 관점 - 개개 사용자 관점에서 정의한 DB 스키마 - 각각의 사용자가 데이터 베이스를 어떻게 보는가를 표현하므로, 사용자마다 생각하는 데이터베이스의 구조가 다르다. - 쉽게 말하면, View 를 의미한다. (겉으로 보이는 Table의 형태이다.) 2) 개념 스키마 (conceptual schema) - 모든 응용에 대한 전체적인 통합된 데이터 구조이다. DB에 저장되는 데이터와 이들의 논리적 구조, 관계를 정의한다. - 보통의 스키마라고 말하는 것이 이 개념 스키마이다. - 어떤 테이블의 속성, 관계와 릴레이션을 정의하는 것이 이 관점에서 바라본 스키마이다. 3) 내부 스키마 : 저장장치 관점 -.. 더보기
[DB] 정보와 데이터베이스, 개체/속성/관계 목차(INDEX) 1. 정보와 데이터 2. 자료처리 시스템의 종류 3. 데이터베이스(database) 정의 4. 통합데이터란? 5. 데이터 베이스의 특성 6. 데이터베이스 시스템이란? 7. 개체란 ? 8. 속성이란? 9. 개체 집합이란 ? 10. 관계란? 11. 데이터베이스의 논리적 구조와 물리적 구조 1. 정보와 데이터 1-1) 데이터의 정의 데이터란, 관찰이나 측정을 통해 수집된 사실이나 값이다. → 데이터를 시간대에 따라 분류하면 정보가 나온다. 1-2) 정보의 정의 정보란, 의사결정을 할 수 있게 하는 데이터의 해석이나 데이터 상호간의 관계이다. 데이터와 정보의 차이점은 이런식으로 볼 수 있다. 정보는 의사결정을 할 수 있게 하는데, 의사결정이란 얘기는 '우리가게가 수요일에 장사가 잘되냐?' 라는.. 더보기
[DB] 데이터베이스 마이그레이션 인트로 안녕하세요. 오늘은 데이터베이스 마이그레이션에 대해 포스팅하겠습니다. 목차 1. 마이그레이션이란? 2. 데이터베이스 마이그레이션이란? 3. PHP기반 라라벨 프레임워크의 MIGRATION 1. 마이그레이션이란? CRUD(Create, Read, Update, Delete)를 잘 수행하려면, 데이터 베이스 테이블 스키마가 잘 정의되어 있어야합니다. 마이그레이션(migration)이란, 한 운영환경으로부터 다른 운영환경으로 옮기는 작업을 뜻합니다. (예, 윈도우 --> 리눅스) 하드웨어, 소프트웨어, 네트워크 등 넓은 범위에서 마이그레이션의 개념이 사용되고 있습니다. 2. 데이터베이스 마이그레이션이란? 데이터베이스에서 데이터 마이그레이션이란, 데이터 베이스 스키마의 버전을 관리하기 위한 하나의 방법(.. 더보기