Search this site
Embedded Files
Cosmopolitan72
  • Home
  • Blog
    • Branch
      • Windows
      • Algorithm
      • pip
      • Py
      • EXEL
      • linux
      • 01.11
      • Programming
      • 365
      • Korean
      • Ethics
      • OS
      • Cryptography
      • Banch
      • Network
      • Security
      • Emergency
      • DB
      • Git
      • Q & A
      • C
      • JS
      • 3
      • S
      • Security_2
      • 3_MAIN
      • SW
      • Cryptography_2
      • AI
      • Cloud
Cosmopolitan72
  • Home
  • Blog
    • Branch
      • Windows
      • Algorithm
      • pip
      • Py
      • EXEL
      • linux
      • 01.11
      • Programming
      • 365
      • Korean
      • Ethics
      • OS
      • Cryptography
      • Banch
      • Network
      • Security
      • Emergency
      • DB
      • Git
      • Q & A
      • C
      • JS
      • 3
      • S
      • Security_2
      • 3_MAIN
      • SW
      • Cryptography_2
      • AI
      • Cloud
  • More
    • Home
    • Blog
      • Branch
        • Windows
        • Algorithm
        • pip
        • Py
        • EXEL
        • linux
        • 01.11
        • Programming
        • 365
        • Korean
        • Ethics
        • OS
        • Cryptography
        • Banch
        • Network
        • Security
        • Emergency
        • DB
        • Git
        • Q & A
        • C
        • JS
        • 3
        • S
        • Security_2
        • 3_MAIN
        • SW
        • Cryptography_2
        • AI
        • Cloud

<

DB

º 데이터와 정보의 차이점 

데이터: 관찰 측정을 통해 수집된 사실 또는 값 


정보: 어떤 목적에 의해 데이터를 해석하거나 가공한 형태 

(의사결정에 도움을 줌)

º 정보의 특징 

정보는 의사결정 과정에 반영되므로,

정확성 및 현재성이 중요 

º 정보관리의 중요성 

정보를 효율적으로 관리하기 위해서는 정보 시스템이 필요한데, 

필요한 데이터를 수집, 저장해 두었다가 필요 시 사용하는 것이 

정보 시스템의 주된 목적임 


정보 시스템에는 

[중앙집중 처리] 와 [분산 처리] 가 있는데,

중앙집중 처리의 단점:

 해킹 피해를 입었을 때 데이터가 

중앙으로 집중되어 있기 때문에

피해가 심각함.

장점: 데이터가 한 곳에 집중되어 있어 

보안 비용이 상대적으로 적게 듦 


분산 처리 단점: 데이터의 보안을 위해 많은 비용 사용

분산 처리 장점: 해킹 등 피해를 입었을 때 

특정 부분만 손실되어 피해가 적음 

º 정보처리 시스템의 유형 

º DB의 정의 

각각의 문화가 다른 팀들이 모여 하나의 작업물을 완성해야 한다고 해보자, 그런데 각각의 문화와 업무 방식이 달라서 난관을 겪는 다면 해결책이 무엇일까? 바로 모두가 쓸 수 있는 프로세스를 만드는 것이다.


 DB도 이와 비슷하다. 중복되는 것을 최소한으로 하여 공용의 데이터를 모아 관리한다. 그러다 보니 일관성이 유지 될 수 있다.


장점: 일관성 유지, 종속성 최소화, 보안, 무결성


중복성 이미지

º DB의 특징 

프로그래밍 언어는 외우기가 어려움 EX) 0xFFFFA18FF 

그렇지만 여기서 SQL을 사용하게 되면 비교적 쉬움 

SELECT NAME 

FROM STUDENT ...

º DBMS

DBMS : 사용자가 DB를 사용할 수 있게 만들어진 SW

EX) ORACLE, MY SQL, MS SQL Server, ACCESS, Postgre sql 

RDBMS란? : 테이블을 이용한 구조 (릴레이션)

가로: 필드, 속성

세로: 튜플, 레코드 라고 부릅니다.

0~10점의 별점을 줄 수 있다라고 한다면 그 0~10까지의 범위를 도메인 이라고 합니다. 웹상의 도메인과 헷갈리면 안됩니다. 


레코드의 총 개수를 기수(Cardinality)라고 하고 필드의 총 개수를 차수(Degree)라고 합니다.

*속성은 null값을 가질 수 있다. (비어 있으면 가능) 

기본키는 null값 불가능

표 이미지 www.gub.uy

테이블 -> 가장 기본이 되는 개체 데이터를 입력받을 수 있는 개체 표,릴레이션(엑셀의 셀) 

기본 키 각 데이터를 식별할 수 있는 항목 

필드 명과 테이블명은 중복할 수 없습니다. 

테이블 명 쿼리명 같을 수 없음.

숫자: 양수,음수,0,널

0000-00-0000;0;_

여기서 ;0은 기호도 저장하라는 뜻/ ;_는 -기호도 같이 쓰라는 것이구

0: 숫자 필수 L: 문자 필수 A: 문자 숫자 필수, > 모두 대문자로 

데이터 정의어 (DDL): 데이터를 생성, 수정할 때 사용. 관리, 설계자 모드

데이터 조작어(DML): 저장된 데이터를 실질적으로 처리하는데 사용되는 언어 (SELECT, UPDATE, DELETE ...)

데이터 제의어(DCL): 보안, 회복등을 이유로 사용, 데이터 관리가 목적 (ROLL BACK, REVOKE ...)

이러면 테이블이 하나 만들어 진 겁니다. 

참고로 필드 삽입은 Insert 누르면 됩니다.

왼쪽에 테이블 이름이 등록으로 되어있는 것을 볼 수 있는데, 오른쪽에 등록번호, 보호자명 ~... 나와 있는 것이 필드입니다. 


열 너비가 1CM, 5CM일 때 1;5로 표현. 목록너비는 이 두 수를 합친 값을 넣어준다.

테이블은 [만들기]에서 만들 수 있음

[디자인 보기] -> 테이터의 구조 필드 속성 변경

[데이터 시트 보기] -> 레코드 입력 및 수정

테이블에 입력된 레코드 입력및 수정은 [데이터 시트 보기]입니다. 

만들기 -> 테이블 디자인 을 하면 테이블 하나 더 만들 수 있음. 

오른쪽 위에 X 누르고 이름 저장하면 됩니다. 

기본키라는건 사원번호, 학생 번호, 주민등록번호 같이 다른 사람이랑 겹쳐서는 안되는번호를 의미함.  테이블을 구성하기 위한 최소 필드이고 반드시 있어야 합니다.  기본키는 한 테이블에서 절대 같은 값을 두 개 가질 수 없으며, 엑세스에서는 완전한 중복 데이터 입력이 불가능. 

테이블이 점점 쌓여가고 테이블의 관계가 복잡해지면서 필드 이름이 ID로 모두 같으면 관계 파악이 어려워집니다. 


기본키는 겹치면 안되지만, 속성(필드) 값은 동일 할 수 있다. ex) 성별 

속성(필드)의 순서는 무관하다. (이미 데이터가 있는 상황에서 바꾸면 난잡해진다는 얘기)

삭제시에 튜플(레코드)값은 계속해서 변화한다. 

그리고 기본키는 하나의 필드가 아닌 여러개의 필드에서 지정할 수 있습니다. 


+ OLE 개체나 첨부 파일 형식의 필드에는 기본 키를 지정할 수 없다. 

저거 선택하고 오른쪽 클릭하면  디자인 보기라고 있거든? 그거 클릭하면 

이런식으로 뜨게 된다. 

노란색으로 표시된 부분 보이지? 저게 등록번호 테이블이 기본키가 되었다는 말임.  만약 등록번호가 C-001이면 다른 사람은 001 쓰면 안된다는 얘기

등록 테이블 더블 클릭하면 이런 식으로 나오게 된다. 

이런 식으로 채우고 오른쪽에 X 누르면 됩니다. 

##0.#kg 그리고 필드 키그도 실수로 바꿈 저기서 그런 다음에 저장하면 된다. 

이런 식으로 되네요 *참고로 짧은 텍스트 -> 텍스트 + 문자 (255자), 긴 텍스트 -> 텍스트 + 문자 (63999자), 숫자는 일반적으로 정수(Long) 형으로 가지고 있는데 4byte임.  날짜와 시간은 100년 ~ 9999년까지 입력 가능함. (8byte), 통화도 8byte라는 사실..일련번호는 학급에서 번호 붙이는 거랑 비슷한데 자동으로 지정이 됩니다.  EX)1..2..3..4 참고로 필드 이름이나 데이터를 입력한 후에 일련번호로 바꾸려고 하면 안 바뀝니다. 

또 YES/NO TRUE/FALSE, ON/OFF도 선택 가능한데 1BIT라는 점을 명심.  OLE 개체는 기본 키 설정 불가능하고, 1GB까지 배정이 된다.


그리고 하이퍼링크라는 것이 있는데 URL 주소나 이메일을 사용할 때 입력하면 링크 형식으로 변환할 수 있는 기능임. 2084자까지 입력 가능. 

각각 EXEL, TEXT, PDF 등으로 내보낼 수 있다.   가져오기 -> 원본 변경 X,  연결하기 -> 양쪽에서 데이터 연결(바꿀 수 있음) 


*제약조건, 관계, 인덱스는 내보내기 불가능 ! 

데이터 베이스의 설계

1단계: 개념적 설계 E-R 다이어그램처럼 개념적으로 설계도를 그린다. 

2단계: DBMS에 적합한 구조로 설계한다. (조금 더 구체적)

3단계: 물리적 설계 DBMS로 구현 가능한 것을 실제로 만들어보면서 실행한다. 

사각형 부분은 테이블입니다. 테이블은 다른 말로 릴레이션 개체라고 합니다. 

마름모 부분은 관계에 해당되는 부분입니다. 

타원 부분은 필드 즉, 속성에 해당하는 부분입니다. 

참고로 밑줄 타원은 기본키에 해당하는 부분입니다. 

겹치지만 떨어져 있는 존재: 외래키

데이터베이스 도구 -> 관계 -> 테이블을 드래그해서 끌어오면 만들 수 있습니다. 

이 상태에서 만들기를 클릭하면 관계가 생성됩니다.  항상 참조 무결성은 그냥 쉽게 겹치지 않게끔 조치 한다고만 알아두자. 


기본키 테이블에 테이블의 외래키 필드 값으로 지정 못함. 


이런 식으로  관계를 없앨 거면 선의 가운데를 클릭하고 Delete를 누르면 됩니다. 

(등록) 등록번호를 끌어서 (진료) 등록번호에 끌어서 놓으면 다시 안내 창이 뜨게 되는데, 이때 참조 무결성 유지와 관련 필드 모두 업데이트를 선택하면 1대 다 관계가 됩니다. 즉, 한 번 등록한 환자는 진료를 여러 번 받을 수 있다는 뜻입니다. 

닫기 -> 예 를 클릭하게 되면 내용이 저장됩니다. 

만들기 -> 쿼리 디자인을 누르면 두 개의 테이블을 요약해서 만들어서 가능, 하나의 테이블만 따로 만들기 가

쿼리 디자인 결과. 그리고 색인이라고 검색 속도에 도움 주는 거 있어요 (인덱스) 32개까지 10개 필드 사용 가능함. 

왼쪽 테이블에서 등록과 진료를 드래그 해서 끌어오면 됩니다. 

등록과 진료에서 더블 클릭을 한다면, 밑에 표처럼 요약해서 볼 수 있습니다.  그런 후에 왼쪽 상단에 실행을 누르면 실행이 됩니다. 

선택한 대로 실행이 된 것을 볼 수 있습니다. 

홈 -> 보기 -> 디자인 보기를 누르면 다시 쿼리 설정으로 돌아간 것을 볼 수 있습니다. 

참고로 쿼리의 조건을 지정하게 되면 필터처럼 원하는 정보만을 골라서 보여줍니다.  대표적으로 내원일자에 between 10-04-02 and 10-04-05 같이 써서 이 기간에 내원한 사람들만 찾을 수 있고 종류에 "강아지" "고양이" 이런 식으로 필터를 걸어서 찾을 수 있다는 뜻이 되겠습니다. 

이상 현상

삽입 이상: 불필요한 데이터가 함께 삽입되는 상황

삭제 이상: 필요한 데이터가 함께 삭제되는 상황 

갱신 이상: 일부만 수정되는 상황



정규화란? 대체로 더 작은 테이블로 분해하는 과정이다. 

종속성을 최소화 하기 위한 과정

외부 스키마: 일반적인 사용자나 응용 프로그래머 관점에서 본 스키마(서브 스키마)

내부 스키마: 설계자의 관점에서 본 스키마(물리 스키마)

개념 스키마: 내 머릿속에 있는 스키마

질의어 

질문하면 대답해 준다는 얘기 

마지막에 ;붙음 

필드가 여러개면 , 로 구분

모든 필드 검색은 *


삭제된 레코드 복구 X

ASC: 오름차순 DESC: 내림차순

ORDER BY: 정렬시 사용

WHERE: 필드에 관한 조건

HAVING: 그룹에 관한 조건 


*행 머리글은 여러개 사용, 열 머리글은 하나만 사용


SELECT 이름, 직 FROM 회사 

WHERE 부서 = "영업부" ; 

-> 회사 테이블에서 부서가 영업부일 때 이름과 직책을 검색하시오 


SELECT 부서 FROM 회사 GROUP BY 부서

HAVING SUM([급여]) >= 10000000

-> 회사 테이블에서 부서를 검색하시오. 

BY~ 부서별 

급여 필드의 합계가 1000만원 이상일 


*INSERT INTO 회사(호봉,급여)

VALUES ("1", 10000000)

회사 테이블에 호봉은 1, 급여는 10000000을 넣을 것이오.. 


*UPDATE 급여 SET 기본급 = 기본급*1.2

-> 급여 테이블을 업데이트 하시오 기본급에 1.2를 곱한 값을 넣으시오

1에다가 0.2%를 더하면 +20%

1에대가 0.2%를 빼면 -20%

폼: 입력, 수정, 삭제를 편리하게 할 수 있는 화면 이것은 엑세스 내부이기 때문에 여기서 조작을 하면 원본이 변경 된다는 것을 알아두자.

보안성이 높다는 것을 알아두자. 

바운드 폼: 데이터가 연결되어진 폼

언바운드 폼: 아직 연결되지 않은 폼


단일 폼: 한 개 레코드  연속폼: 여러 줄 레코드 

테두리 스타일: 폼의 크기 조정 못하게 하는 것

모달: 예(다른 폼을 선택 못하게 하는 것.)

하위폼 보고서: 폼안에 폼. 러시아 오뚜기 인형처럼 -> 관계가 설정되어 있어야 함, 데이터 종류 같거나 호환되어야 함. 개수 상관 없음.


행 원본 유형에서 할 수 있는 것: 테이블/쿼리, 필드 목록, 값 목록

탭정지: 기본값은 예

조건부 서식: 조건이 만족하지 않으면 해제 된다. 


도메인 함수 ("필드명", "테이블명", "조건")


보고서: 입력 수정 삭제 불가 -> 디자인 보기에서는 가능, 레이아웃 보기에서도 보면서 수정 가능


페이지 설정: 용지방향, 용지, 프린터


그룹: 그룹은 머리글, 바닥글에서 반드시 하나 선택해야 함. 

그룹 삭제되면 그 안에 있던 컨트롤도 모두 삭제 된다. 


전체 &[PAGE]& 

컨트롤 원본: 1 , 누적합계 그룹: 그룹

각각의 매크로를 .으로 구분 AUTOEXEC -> 매크로 자동 실행


조회 속성은 데이터 형식을 선택하고 조회를 클릭한 다음에 선택할 수 있는 것을 의미함. 텍스트 상자/ 목록 상자/ 콤보 상자가 존재함. 

참고로 짧은 텍스트, 숫자, YES/NO만 설정 가능

*조회 속성을 이용하면 사용자가 직접 값을 입력하는 과정에서 오류를 줄일 수 있다.

*조회 열에서 다른 테이블이나 쿼리에 있는 값을 조회 하도록 설정할 수 있다. 

행 원본에 맞춰서 자동으로 설정 X

먼저 텍스트 상자를 선택했을 때 화면입니다. 

텍스트 상자 이미지

이번에는 목록 상자 부분입니다.  [보기] -> [디자인 보기]

실행 결과로 밑에 화살표가 나타난 것을 볼 수 있습니다.  콤보 상자도 비슷합니다. 

목록 상자 이미지

짧은 텍스트, 긴 텍스트 등을 선택한 후에 보기를 누르면 필드 속성을 볼 수 있다. 여기서 여러가지를 수정할 수 있습니다.

(1) 필드 크기는 엑셀의 표시 형식과 같음(G/표준)


캡션은 필드에서 보여지는 제목을 바꿀 수 있습니다. 

copyright © Cosmopolitan72 All Rights Reserved. 
Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse