본문 바로가기

DBMS

(35)
[SQL] DDL( Data Define Language ) DDL( Data Define Language ) ■ 개념 □ 테이블(Table) , 뷰(View) , 스키마(Schema) , 도메인(Domain) , 인덱스(index)를 정의하거나 변경 또는 제거할 때 사용하는 언어다. □ DDL로 정의된 내용은 메타데이터(Metadata)가 되며 , 시스템 카탈로그(System Catalog)에 저장된다. ☞ 메타데이터 : 다른 데이터를 설명해 주는 데이터.(속성정보) ■ 유형 명령문 기능 CREATE 테이블,뷰,스키마,도메인,인덱스를 만든다. ALTER 테이블을 수정한다. DROP 테이블,뷰,스키마,도메인,인덱스를 제거한다. ■ 도메인 ( CREATE DOMAIN ) □ 도메인은 데이터의 범위를 지정하는 데이터타입이다. EX) 성별 [ 남,녀 ] 초등학교 학년 ..
[SQL] 서브쿼리 문제 CREATE DATABASE sqlDB; USE sqlDB; -- 데이터베이스(sqlDB) 지정 CREATE TABLE userTbl--회원테이블 (userID char(8) NOT NULL PRIMARY KEY, --사용자아이디 name nvarchar(10) NOT NULL, --이름 password char(8) not null, --비밀번호 birthYear int NOT NULL, --출생년도 addr nchar(2) NOT NULL, --지역(경기,서울,경남식으로2글자만입력) mobile1 char(3), --휴대폰의국번(011, 016, 017, 018, 019, 010 등) mobile2 char(8), --휴대폰의나머지전화번호(하이픈제외) height smallint..
SQL 인젝션 SQL은 구조화질의언어(Structured Query Language)로써 DB 접근에 쓰이는 언어이며 , Injection은 주사,주입이라는 뜻이다. SQL Injection은 추가적으로 쿼리(SQL)를 삽입시켜서 DB값을 조작 , 변조하거나 로그인 인증 우회 등을 하는 웹 해킹 기법이다. SQL 인젝션의 목적은 추가된 쿼리를 실행시키는것이다. 만약에 다음과 같은 쿼리가 있다고 가정해보자. SELECT userid,password FROM usertbl WHERE userid = 'admin' and password = 'qwer1234'; 이 쿼리는 정상적인 로그인 인증 쿼리다. 아이디가 admin , 비밀번호가 qwer1234인 사용자를 usertbl 테이블에서 조회해서 존재하는 값이면 로그인 시켜..