Download presentation
Presentation is loading. Please wait.
Published by류원 이 Modified 8년 전
1
1 SQL 정보보호학과 양 계 탁
2
2 SQL 개요 SQL 개요
3
3 Database u 연관된 데이터들의 집합 u 데이터를 쉽게 관리하는 프로그램 종 류종 류 관계형 데이터베이스 객체지향형 데이터베이스 계층형 데이터베이스 네트워크 데이터베이스 데이터를 2 차원적인 테 이블에 저장하는 형식 : MS SQL 서버 Access
4
4 사 용 자 (User) DBMS( 데이터베이스 관리 시스템 ) 데이터베이스 (Data File) 필요 (Request) 대답 (Response)
5
5 SQL 이란 ? u 관계형 데이터베이스 u 관계형 데이터베이스에 사용하는 언어 u SQL(Structured Query Language) u 국제표준화 기구에서 관계형 데이터베이스 표준언어로 채택 u 데이터의 검색, 입력, 수정, 삭제, 제어, 복구 등의 기능을 제공
6
6 SQL 역사
7
7 SQL 과 데이타베이스 관리 u DBMS ( 데이타베이스 관리 시스템 ) u DB 를 관리, 운영, 액세스하는 프로그램들의 모임 ( 종류 ) u 계층형 DBMS u 네트워크형 DBMS u 관계형 DBMS : 80 년대 후반 부터 본격적으로 사용됨 u SQL u 관계형 데이타베이스 언어 u 국제 표준으로 지정 (ANSI/ISO SQL1, SQL2)
8
8 SQL 역사 (1) : 관계형 이론이 1970 년에 제안된 이후 약 27 년 동안 발전 u 1970 E.F.Codd 박사가 관계형 이론 제안 u 1974 - 79 IBM 에서 System/R 프로젝트 실시 많은 관계형 기술이 개발됨 (SQL 포함 ) u SEQUEL ---> SEQUEL/2 ---> SQL u INGRES (70 년대 중반 ) UC 버클리에서 개발 QUEL 을 개발하고, 후에 상용 시스템으로 발전 u Oracle (1979) 세계 최초의 상용 관계형 DBMS
9
9 SQL 역사 (2) u SQL/DS (1981) IBM 의 최초의 관계형 DBMS DB2 (1983) IBM 의 대표적인 관계형 DBMS u ANSI SQL (1986) 미국 표준 (SQL1) ISO SQL (1987) 국제 표준 (SQL1) u ANSI/ISO SQL (1992) 미국 / 국제 표준 (SQL2)
10
10 SQL 표준안 (1) u ANSI/ISO 표준안 u ANSI SQL (1986) 미국 표준 (SQL1) ISO SQL (1987) 국제 표준 (SQL1) ANSI/ISO SQL (1989) SQL1 확장판 ANSI/ISO SQL (1992) 미국 / 국제 표준 (SQL2) ANSI/ISO SQL (199?) SQL3 의 발표 예정 u 기타 SQL 표준안 u X/OPEN 표준안 유럽지역 표준안 u SAA SQL IBM 의 자사 제품 표준안
11
11 SQL 표준안 (2) u ODBC 와 SAG (SQL Acess Group) u DB 연동성에 대한 방안 제시 u SAG 의 두번째 표준안을 기반으로 MS 사에서 ODBC 제안
12
12 SQL 표준안 (3) u 이식성에 대한 잘못된 이해 : SQL 표준안에 대한 과장된 선전으로 인해 [ 그림 3- 1] 이 실현 가능하다고 주장된다.
13
13 SQL 표준안 (4) u 이식성의 장애 요소 u 오류 코드 u 데이타 타입 u 시스템 테이블 u 대화식 SQL u 프로그램 방식 인터페이스 u 동적 SQL u 의미 (semantics) 차이 u 정렬 순서 u 데이타베이스 구조
14
14 SQL 과 네트워킹 (1) u 중앙집중식 구조 : 응용 처리와 DB 처리가 모두 중앙 컴퓨터에서 수행되고, 많은 사용자가 공유하기 때문에 시스템에 많은 부하가 걸린다.
15
15 SQL 과 네트워킹 (2) u 파일 서버 구조 : 해당 파일의 모든 블록이 통신 선을 통해 전송되기 때문에 심각한 통신 부하가 발생할 것이다.
16
16 SQL 과 네트워킹 (3) u 클라이언트 / 서버 구조 : 네트워크 통신량을 줄이고, DB 의 부하를 분담한다 ( 전위와 후위 시스템 간의 역할 분담 ).
17
17 SQL 의 영향 (1) u SQL 과 IBM 의 SAA u DB2 u SQL/DS u SQL/400 u DB2/6000 u DB2/2 u 미니 컴퓨터에서의 SQL u UNIX 시스템에서의 SQL u SQL 과 트랜잭션
18
18 SQL 의 영향 (2) u 개인용 컴퓨터에서의 SQL u PC LAN 상의 SQL
19
19 SQL 언어 (1) u DB (DataBase) u 서로 연관이 있는 데이타들의 모임 u DBMS (DataBase Management System) u DB 를 관리, 운영, 액세스하는 프로그램들의 모임 u SQL (Structured Query Language) u 구조적 질의어 u 관계형 DB 언어 u DB 에 저장된 데이타를 조직, 관리, 검색하기 위한 도구 ( 언어 )
20
20 SQL 언어 (2) u DB, DBMS, SQL 의 관계
21
21 SQL 언어 (3) u SQL 의 기능 u 데이타 정의 - 저장 데이타의 구조와 데이타 항목들 간의 관련성을 정의 u 데이타 검색 - 저장 데이타의 검색 u 데이타 조작 - 데이타의 삽인, 삭제, 수정 u 접근 제어 - 인가되지 않은 사용자의 사용을 제한 u 데이타 공유 - 동시 사용자들의 사용을 허용 u 데이타 무결성 - 비일관적 갱신, 시스템 고장으로 부터 데이타 훼손을 방지
22
22 SQL 의 역할 (1) u SQL 의 역할 : DB 엔진과 DBMS utility 들을 연결하는 매개체
23
23 SQL 의 역할 (2) u SQL 의 역할 u SQL 은 대화식 질의어이다 u SQL 은 DB 프로그래밍 언어이다 u SQL 은 DB 관리 언어이다 u SQL 은 분산 DB 언어이다 u SQL 은 DB 게이트웨이 언어이다
24
24 SQL 기능과 장점 (1) u SQL 의 주요 기능 : SQL 은 이해하기 쉬우면서, 데이타를 관리할 수 있는 포괄적인 도구이다. u 제작사에 독립적 특성 u 높은 이식성 u SQL 표준화 u IBM 의 지원 (DB2) u MS 사의 참여 (ODBC) u 관계형 이론의 튼튼한 기반
25
25 SQL 기능과 장점 (2) u SQL 의 주요 기능 ( 계속됨 ) u 고급 영어문장과 같은 구조 u 대화식 질의 u 프로그램 방식의 DB 접근 u 데이타에 대한 다중 뷰 u 완전한 DB 언어 u 동적 데이타 정의 u 클라이언트 / 서버 구조
26
26 필드 1 필드 2 필드 3 레코드 1 데이터 1 데이터 2 데이터 3 레코드 2 데이터 4 데이터 5 데이터 6 레코드 3 데이터 7 데이터 8 데이터 9 ….. 특정한 자료형식을 담는다. 자료의 형태를 미리 결정 필드 -> 레코드 -> 테이블 -> 데이터 베이스
27
27 MS-SQL 데이터베이스 생성 u DB 생성 u Logins 생성 u DB Logins u Table 생성 u Table Logins
28
28 u Enterprise manager 를 실행 u DB 에서 단축메뉴 u New DB 를 실행 u Name 란에 DB 의 이름 결정 u Security – Logins -> 생성 DB 의 사용자 이름 입력, authentication(SQL Server), PWD 입력, Defalt(DB 선택 ), language(Default) u Database Access 탭 : 사용자가 생성 DB 의 접근 권한 생성 u PWD 확인 u Table 생성 u Table 접근과 추가권한 설정
29
29 자 료 형 u 문자형 (char, varchar, text) u 숫자형 (int, smallint, tinyint, float, money) u 날짜 데이터형 (datetime, smalldatetime) u 2 진 데이터형 (binary, varbinary, image)
30
30 문 자 형 데이터형값의 범위설 명 Char(n) 8KB 까지 데이터의 길이가 짧으면 나머지 공간은 스페이스 공간으로 채움 varchar 8KB 까지 데이터의 길이가 짧으면 나머지 공간은 없앰 가변형 문자 데이터 text 2GB 까지좀더 많은 문자를 넣을 때 예 “ 홍길동 ” “ 많은 문자 …”
31
31 숫자형 데이터형값의 범위 Int -2.17*10^9 ∼ 2.17*10^9 tinyint 0 ∼ 255 float -1.7*10^308 ∼ 1.7*10^308 예 정수데이터 작은 단위 숫자 실수데이터 money -9.22*10^15 ∼ 9.22*10^15 화 폐화 폐
32
32 그 외의 데이터형 데이터형값의 범위 datetime 1753/01/01 ∼ 9999/12/31 smalldatetime 1900/01/01 ∼ 2079/06/06 binary(n) 8KB 까지 예 May 11,1999 12:00:00.01 May 11, 1999 12:00 varbinary(n) 8KB 까지 image 2^31 – 1 바이트 까지
33
33 Select 문 select Field_name1, Field_name2, … from Table_name1, Table_name2, … where ( 조건절 ) order by ( 정렬 조건 ) Query 문을 사용하여 DB 에서 원하는 자료를 찾 아올 때 사용하는 SQL 문 select name, number, email, address from MemberInfo where number > 0 and number < 10 order by number desc
34
34 Insert 문 Insert into Table_name(Field_name1, Field_name2, Field_name3) values(value1,value2,value3) Insert 문은 DB 의 테이블의 필드에 새롭게 저장하고자 하는 데이터를 입력시키는 명령문. value 에서 숫자 데이터가 아닌 경우 작은 따옴표 ( ‘ ) 로 둘러준다.
35
35 Delete 문 delete (from) Table_name where 조건 Delete 문은 DB 의 테이블의 자료를 삭제할 때 사용하 는 명령문. from 은 생략 가능하다. where 다음의 조건을 생략하면 테이블의 모든 자료가 삭제된다.
36
36 Create 문 create table Table_name ( Field_name1 Field_type [not null], Field_name2 Field_type [not null], Field_name3 Field_type [not null], ) table 을 만들 때 사용하는 SQL 문 Table_name 테이블 이름 Field_name 테이블의 필드 이름 Field_type 필드의 자료형 Not null 필드 값이 반드시 있는 경우
37
37 Drop 문 drop table Table_name table 을 삭제 할 때 사용하는 SQL 문
38
38 select 출력물 from 테이블 where 조건 = (select … from … where … ) 질의내 질의 조인 (join) select 출력물 from ( 테이블 join 테이블 on 공통속성 ) where 조건
39
39 Access 를 SQL 로 전환 방법 u Sql DB(Webprogram) 에서 단축메뉴 u 모든작업 -Import Data u SOURSE(microsoft Access 파일 ) sourse 화일 선택 ( 아이디와 패스워드는 생략 ) u destinetion(microsoft OLE DB probider for SQL server) u 서버는 (local), use window NT 선택
Similar presentations