전체 글
[Oracle] #3-3 자료형과 제약 조건
1. 쓰레기 데이터 걸러내기 DB 서버를 사용하는 것은 생각보다 많은 자원(돈)이 든다. 그런데 그 서버 안에 불필요한 데이터가 너무 많이 차지하고 있다면? 그래서 정작 저장해야하는 데이터를 저장하려하니 공간이 부족하다면? 우리는 데이터를 입력할 때 자료형과 제약 조건을 통해 데이터를 걸러내고 정리하는 것이 필요하다. 2. 자료형 1) 문자형 - 가변형 가변형은 내가 사용하고 싶은 만큼만 사용한다. 1바이트를 사용하면 나머지 9바이트는 재사용 가능. 용량을 많이 절약할 수 있다. 하지만 사용된 사이즈를 계산해야 함으로 속도가 느린 문자 타입. 주로 길이가 심하게 변하는 게시판의 제목등에 많이 사용된다. : varchar(5) 'SKY'; 예) 아이디, 비밀번호, 이름, 주소 ~~ - 고정형 고정형은 정해..
[Oracle] #3-2 시퀀스
1. 데이터의 일련번호 데이터를 정리할 때 DB에서 일련번호를 부여할 수도 있다. 이 일련번호를 발생시킬 때는 특정 데이터를 구분하기 위해서이기 때문에 값에 중복해서 일련번호를 부여하진 않는다. 오라클 DB에서는 자동으로 일련번호를 부여할 수 있다. 이것을 시퀀스(Sequence)를 생성한다 라고 부른다. M*Sql에서는 Identity 제약조건을 만든다 라고 부른다. (M으로 시작하는 SQL 프로그램; Maria DB, My-Sql 등) 이제 어떻게 일련번호를 부여하는지 알아보자. 2. 시퀀스 연습하기 1) 테이블 생성하기 create table sungjuk( sno int not null -- 일련번호 ,uname varchar(50) not null ,kor int not null ,eng int..
[Oracle] #3-1 sort정렬과 Alter문
1. DB가 데이터를 대하는 방법 DB에서 데이터는 우리가 넣은 순서와는 전혀 상관없이 들어간다. 데이터가 중간에 삭제되면 그 빈 공간에 새로운 데이터가 들어가기도 하고, 순서와는 상관없이 데이터가 차곡 차곡 들어가기만 한다. 그래서 데이터를 다 넣은 다음에 DB 안에서 데이터를 한번 정렬해주어야 한다. 물론 하지 않아도 된다. 다른 툴에서도 가능은 하다. 하지만 DB 안에서 데이터를 정렬하는게 압도적으로 편리하기 때문에 DB 툴 안에서 정렬을 해준다. 2. Sort 정렬 - 특정값(keyflied)을 기준으로 순서대로 재배치해준다. - 오름차순 Ascending Sort ASC 생략하면 기본값 1->10 A->Z a->z ㄱ->ㅎ - 내림차순 Descending Sort DESC - 형식) order ..
[Oracle] #2-3 Where 조건절(연산자, between, in, like)과 Null값
1. Where 조건절 where 조건절은 sql에서 가장 기초적으로 쓰이는 문법이다. 만약 한 반의 성적의 평균 중에서 남자 친구들의 평균과 여자 친구들의 평균을 따로 분리해서 구하고 싶다고 생각해보자. 이처럼 조건을 만족하는 행들에 대해서 데이터값을 조작하고 싶을 때 사용하는 조건절이다. where 조건절은 조건에 만족하는 레코드만 대상으로 조회(select), 수정(update), 삭제(delete)를 할 수 있다. (insert에는 쓰이지 않는다) 2-1. Where 조건절에서 사용하는 연산자 아래는 데이터 베이스에서 사용하는 여러 연산자에 대한 설명들이다. 1) 비교연산자 ● > >= =90 and mat>=90; 문6) 국어, 영어, 수학 중에서 한과목이라도 40미만 행을 조회하시오 selec..
[Oracle] #2-2 기초 SQL문 - select, as, commit, rollback
1. 테이블 생성하기 우선 테이블부터 다시 만들어보자. 그리고 그 안에 10명의 성적 내용을 채워넣었다. [sungjuk 테이블 생성] create table sungjuk( uname varchar(50) not null -- 빈값을 허용하지 않음 -- 영문자 50자까지 허용 -- 한글 16글자 이내 입력 ,kor int not null ,eng int not null ,mat int not null ,tot int null -- 빈값 허용 ,aver int -- null 생략가능 ); [샘플 데이터 행추가] insert into sungjuk(uname,kor,eng,mat) values ('홍길동', 70, 85, 100); insert into sungjuk(uname,kor,eng,mat) va..
[Oracle] #2-1 기초 SQL문 : 테이블 생성하기
1. 테이블 시나리오 DataBase는 테이블에 작성이 된다. 그렇기에 이 DB를 작성할 때는 테이블 시나리오를 잘 작성해야한다. 이 테이블 시나리오를 짜는 설계는 실제 업무 안에서도 업무 초임자에게는 맡기지 않는다. 그만큼 테이블 시나리오를 짜는 것은 중요하고도 어려운 일이다. 만약 학교에서 학생들의 성적을 DB에 저장해두려고한다고 생각해보자. 그 때 우리는 DB 안에 들어갈 테이블을 미리 계산해둔다. (아래와 같이 엑셀과 같은 프로그램으로 시나리오를 짜기도 한다) 그리고 이 것을 바탕으로 DB에 테이블을 만드는 것이다(NoSql에서는 document라고 불린다). 2. 테이블 만들기 : Create 테이블은 create table로 만든다. 이 때 table의 이름을 먼저 지정한다. 그리고 상단의 사..