DDL 중 하나인 Create를 사용해 보자

※SQL은 코드 작성 시 대소문자를 구분하지 않습니다.

 

create table [테이블 이름] (
	[컬럼이름] [Type(Size)] [세부속성] [기본값] [,...],
	[constraint] [기본키 설정명] primary key (컬럼 이름[, 컬럼이름...]//하나만 사용해도 됨),
    [constraint] [외래키 설정명] foreign key (컬럼 이름[, 컬럼이름...]//하나만 사용해도 됨)
    	references [테이블 이름] ([컬럼 이름][, 컬럼이름...]//하나만 사용해도 됨)
);

primary key의 경우 하나의 칼럼을 입력하면 입력한 칼럼이 PK가 되고 여러 개를 입력하면 여러 개가 하나로 묶여 PK가 된다.  FK 역시 같다.

하지만 primary key는 테이블 내에 하나만 존재해야 하므로 여러번 설정을 못해주는 반면 FK는 여러 테이블에서 참조를 받아올 수 있다.

 

constraint란 제약조건을 이야기 한다.

설정 명이라는 부분이 있는데 key를 정한 곳의 변수라고 생각을 하면 된다.

후에 작성할 포스트에 나오겠지만 테이블 간 제약을 해제할 때 사용될 수 있는 게 설정 명이며 다른 설정명과 중복될 수 없다. 중복되지 않게 네이밍을 하는 팁은 하단에 사용 예제에 작성해놓겠다

 

칼럼의 이름을 작성 시 주의할 사항이 있다. 띄어쓰기는 허용되지 않으며 단어와 단어 사이에 공백 대신 _ 언더바를 이용한다

 

create table test (
  test_id char(4),
  test_name varchar2(30),
  test_job varchar2(30),
  con_id number(3),
  CONSTRAINT pk_test primary key(test_id),
  constraint fk_test foreign key (test_id) references result(result_id)
);

//기본키, 외래키 설정명을 중복되지 않게 하려면 위의 설정명과 같이 PK_[해당 테이블명]
//으로 표기하면 중복될 일이 없다. 테이블은 중복이 될 수 없기 때문이다.

 

'DataBase > Oracle' 카테고리의 다른 글

6. Selec  (0) 2021.06.14
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14
2. SQL  (0) 2021.06.08
1. Key  (0) 2021.06.08

-입력

사용자로부터 값을 입력 받음

Scanner scanner = new Scanner(System.in);

스캐너를 사용

스캐너 사용 시 import해와야 된다.

 

-출력

화면에 결과 값을 출력

System.out.println();

'Back-end > JAVA' 카테고리의 다른 글

8. 조건문(if, else, else if, switch)  (0) 2021.06.14
7. Operator  (0) 2021.06.11
5. 타입 변환  (0) 2021.06.09
4. 변수의 타입  (0) 2021.06.09
3. 변수(Variable)  (0) 2021.06.09

-개요

데이터 타입을 다른 데이터 타입으로 변환하는 것

 

-자동 타입 변환

작은 타입을 큰 타입으로 변환하는 경우 자동으로 변환된다

byte < short < int < long < float < double

byte byteValue = 10;
int intValue = byteValue;

위의 코드 예와 같이 자동으로 타입이 변환된다.

 

-강제 타입 변환

큰 타입을 작은 타입으로 강제 변환하는 것이다

int intValue = 10;
byte byteValue = (byte) intValue;

위의 코드와 같이 소괄호 안에 강제 변환할 타입을 정해줘야 컴파일 에러가 안 난다.

이렇게 강제로 타입을 변환하는 것을 Casting 한다고 한다.

 

-연산식에서 자동 타입 변환

int = byte + byte

int = char + char

int = int / int literal

double = int / double or float literal

 

숫자와 문자를 +연산하면

숫자 + 문자열 = 숫자가 문자로 바뀌어서 모두 문자열로 표현된다

EX1 > 3 + "HI"를 출력하면 "3HI"가 출력된다.

EX2 > 3 + "3"을 출력하면 "33"이 출력된다.

 

-문자열 강제 변환

문자열로 입력돼있는 숫자를 형 변활 할 수 있다.

EX

String str = "10";

byte value = Byte.parseByte(str);

이와 같이 다른 기본 자료형에 맞는 타입을 parseXXX앞에 넣어서 입력한 타입에 맞게 강제 형 변환할 수 있다.

 

'Back-end > JAVA' 카테고리의 다른 글

7. Operator  (0) 2021.06.11
6. 입출력  (0) 2021.06.09
4. 변수의 타입  (0) 2021.06.09
3. 변수(Variable)  (0) 2021.06.09
2. 프로젝트 생성 및 환경 설정 (and주석;comment)  (0) 2021.06.08

-타입

변수의 타입에 따라 변수에 저장할 수 있는 값의 종류와 허용 범위가 달라진다.

자바는 총 8개의 기본 타입이 있고 그중 숫자를 표현하는 7개의 타입이 있다.

  • 기본 타입; Primitive(정수와 실수타입이 숫자를 표현하는 타입)
    • 정수 타입 : byte, char, short, int, long
    • 실수 타입 : float, double / 소수점 표현
    • 논리 타입 : boolean
  • char : 하나의 문자를 저장할 수 있는 타입으로 작은따옴표로 감싼 문자를 유니코드로 변환하여 저장
  • 문자열은 char에 저장할 수 없고 저장하기 위해서는 String을 사용해줘야 하며 큰따옴표로 감싸야함
  • String과 같은 타입은 Reference type(참조타입)이라고 한다.

 

-이스케이프 문자

역슬레시 \를 사용해서 특수문자를 표현해줌

ex) \t 탭만큼 띄움, \n 줄 바꿈, \" 큰따옴표 출력 등이 있다

 

-리터럴(Literal)

소스코드에서 프로그래머에 의해 직접 입력된 값을 리터럴이라고 한다.

'Back-end > JAVA' 카테고리의 다른 글

6. 입출력  (0) 2021.06.09
5. 타입 변환  (0) 2021.06.09
3. 변수(Variable)  (0) 2021.06.09
2. 프로젝트 생성 및 환경 설정 (and주석;comment)  (0) 2021.06.08
1. JAVA(JDK) 설치  (0) 2021.06.07

시작하기 전에 programing을 할 때 가장 중요하게 여겨지는 요소가 4가지 있다

  1. 변수
  2. 연산자
  3. 제어문
  4. 메소드 / 클래스

이렇게 네 가지를 차례대로 배울 예정이다

 

먼저 변수란

값을 저장할 수 있는 이름이라고 생각하면 되는데

int x = 0;

이렇게 변수를 선언하고 초기화할 수 있다.

값을 메모리 어딘가에 저장을 하고 그 메모리의 주소 값을 변수의 이름에 연결을 시키는 방법이기 때문에 값을 저장할 수 있는 이름이라고 한다.

 

-선언 방법

[type] [variableName] = [value];

이렇게 선언과 초기화가 이루어진다 하나하나 보면

  • [type] : 변수의 타입을 지정해 줘야 한다.
    • 변수의 타입이란 변수에 저장될 값이 어떤 타입인지를 정해주는 것으로 지정한 타입 외에 값은 들어갈 수 없다. 예를 들어 int타입의 변수를 지정했으면 문자, boolean 등은 들어갈 수 없는 것이다.
    • 컴퓨터의 메모리가 모자랐던 과거의 컴퓨터에서 코딩을 하기 위해서는 변수의 타입이 매우 중요했다. 메모리의 낭비가 있을 경우 작업의 효율이 매우 낮아지거나 작동하지 않을 수도 있었다. 그렇기에 int, double 등의 타입을 나눠서 용량을 정한 후에 용량에 알맞게 넣은 것이다.
    • 하지만 최근의 프로그래밍 언어들 그리고 자바 또한 최신 버전에서는 var라던가 자바스크립트의 const, let 등 타입이 아닌 '변수를 선언할게'라고만 써주면 된다. 컴퓨터의 발전이 프로그래머들을 편하게 해주고 있다
    • 지금은 1.8 버전이고 var과 같은 변수 타입은 지원하지 않으므로 하나하나 익혀보도록 하자
  • VariableName(변수명)
    • 변수명은 할당한 값을 꺼내 쓰기 위해서 지어주는 이름이다
    • 변수 명 조건
      • 첫 번째 글자는 문자, _(underbar), $ 이렇게 세 가지로만 시작해야 하며 숫자로 시작할 수 없다
      • 변수명 내에 특수문자는 $, _ 두 개만 가능하다
      • 변수명은 대소문자를 구분한다
        • ex> apple와 aPple는 다른 변수
      • 관례로 CamelCase를 사용한다
      • 길이 제한 없음
      • 예약어를 사용하면 안 된다
        • 예약어란 if, for, int, main 등 자바에서 프로그래밍을 하기 위해 필요한 단어들을 뜻함

 

-변수 사용

변수를 사용하기 위해서는 초기화를 무조건 해줘야 한다.

초기화를 해주지 않으면 변수를 사용할 수 없는데 여기서 초기화란 변수를 선언

int x;

하고, 선언한 변수에 값을 할당해주는 작업

x = 10;

을 초기화라고 한다.

 

초기화는 선언과 동시에 할 수 있는데 맨 위에 작성한 부분과 같이

int x = 1;
int y = 10;
int age = 33;

이런 식으로 변수의 선언과 동시에 초기화하는 방법으로 많이 사용되고 있다.

 

변수를 사용하려면 변수의 이름을 입력하면 된다.

이렇게 사용을 하면 되며 밑의 콘솔에 10이 출력되는것을 볼 수 있다.

 

-변수의 사용 범위

거의 모든 언어가 비슷할건데 변수는 {} 이런 중괄호 안에서만 사용이 가능하다

조금 더 구체적으로 말하자면

public static void main(String[] args) {
	int x = 1;
    if(true) {
    	int y = 2;
        x사용 가능
    }
    while(true) {
    	int z = 3;
        x사용 가능
    }
    x사용 가능 / y,z사용 불가
} 

x,y,z사용 불가

위의 코드와 같다.

변수를 선언한 블록 {} (<= 이 중괄호를 블록이라고 한다)

안에서만 변수 사용이 가능하다.

'Back-end > JAVA' 카테고리의 다른 글

6. 입출력  (0) 2021.06.09
5. 타입 변환  (0) 2021.06.09
4. 변수의 타입  (0) 2021.06.09
2. 프로젝트 생성 및 환경 설정 (and주석;comment)  (0) 2021.06.08
1. JAVA(JDK) 설치  (0) 2021.06.07

Structured Query Language의 줄임말로 직역하면 구조적 질의 언어이다

 

-특징

  • CRUD를 할 수 있다
  • 관계형 데이터 베이스의 장점이다
  • 표준화가 되어 거의 대부분의 DBMS에서 동일하게 적용된다(조금씩 다름)
  • 비절차 언어이다 : non-Procedural Language
    • 절차 언어 : PL/SQL
  • SQL종류
    • 대화형 : DBMS에서 제공하는 유틸리티 프로그램을 이용하여 사용자가 직접 SQL문을 입력하고 실행 결과를 확인하는 방식
    • 내장 : 프로그램 안에 포함되어서 사용되는 방식

 

-관계형 데이터 베이스를 대상으로 데이터 조작을 수행하는 명령

  • DML; Data Manipulation Language : 데이터 조작어
    • insert, update, delete / 데이터를 컨트롤
  • DCL; Data Control Language : 데이터 제어어
    • grant, commit, rollback, savepoint / 권한 등을 컨트롤
  • DDL; Data Definition Language : 데이터 정의어
    • create, drop, alter / 테이블 등을 컨트롤
  • Query : 데이터 조회어
    • select / 제일 중요, 정보 열람 등

'DataBase > Oracle' 카테고리의 다른 글

6. Selec  (0) 2021.06.14
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14
3. DDL(Data Definition Language) - Create  (0) 2021.06.10
1. Key  (0) 2021.06.08

데이터베이스에서 Key라는 개념에 대해 설명하려 한다

Key는 기본키, 후보 키, 대체키, 복합 키, 외래 키가 있으며 각각 어떤 특징을 가지고 있는지 보도록 하자

    • 기본키(Primary Key)
      • Null 값이 허용되지 않음
      • 중복을 허용하지 않음
      • 해당 테이블을 대표하는 키
    • 후보 키(Candidate Key)
      • Primary Key + Alternate Key
    • 대체키(Alternate Key)
      • 후보 키 중 기본키로 선택되지 않은 나머지 키
      • Primary Key를 대신할 수 있는 키
    • 복합 키(Composite Key)
      • 하나의 칼럼이 후보 키의 역할을 하지 못하고 기본키가 두 개 이상의 칼럼이 합쳐져야 후보 키의 역할을 하는 경우
    • 외래 키(Foreign Key)
      • 상위 테이블의 PK가 하위 테이블에 PK혹은 일반 데이터가 되면 FK라고 한다
      • 식별과 비식별 관계로 나눌 수 있다
        • 식별 : life cycle이 부모와 자식이 같음 / 부모가 없어지면 자식이 같이 없어짐
        • 비식별 : life cycle이 부모와 자식이 다름 / 부모가 없어져도 자식은 남아 있음
      • 부모 테이블의 기본키는 자식 테이블에 외래 키로 전이된다
      • 두 테이블 간에 외래 키에 의한 참조 관계에 있을 때 두 테이블 간 데이터 불일치가 발생하는 상황이 되면 DBMS는 3가지 조치를 취할 수 있다
        • 제한(Restrict) : 삭제 연산을 거절하는 조치 / 제일 많이 사용된다
        • 연쇄(Cascade) : 관련 데이터를 모두 삭제 / 권장하지 않는다
        • Null 값으로 대체(Nullify) : 관련 데이터를 Null 값으로 대체 / 권장하지 않는다

'DataBase > Oracle' 카테고리의 다른 글

6. Selec  (0) 2021.06.14
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14
3. DDL(Data Definition Language) - Create  (0) 2021.06.10
2. SQL  (0) 2021.06.08

가장 대중적인 IDE로 Eclipse를 사용해서 공부를 진행할 건데 시작 전에 간단한 세팅을 먼저 해야 한다

먼저 하얀색의 화면이 눈이 아프고 마음에 들지 않으므로 색을 변경해주자

 

general > appearance > enable theming > theme > dark

이렇게 들어가서 색을 변경해주자. 그 뒤에 한글을 인식 못할 수도 있으니 UTF-8 설정을 해줘야 한다

 

window > preferences > general > workspace > text file encoding > other : UTF-8

 

이렇게 하면 text encoding도 끝이다

 

이제 eclipse를 웹 개발에 맞게 세팅을 변경해 주기 위해 java perspective 옆에 버튼을 눌러서 java모드로 변경을 해준다

 

드디어 프로젝트를 생성할 차례다

왼쪽에 보이는 Create a java project를 선택 후 JRE버전에 맞게 프로젝트를 생성해준다.

그 뒤에 control + N을 눌러서 package를 먼저 생성한 후 Class를 만들어 준다.

Class를 만들 때 주의 사항은 Class이름의 첫 글자는 무조건 대문자로 와야 되며 지금 단계에서 설명할 수 없는 부분이지만 일단 public static void main 항목을 체크하고 finish를 눌러주자

그 뒤에 위와 같이  System.out.println("Hello World!"); 를 입력하자

주의사항은 Hello World! 를 괄호 안에 작성할 때 무조건 큰따옴표"를 사용해줘야 한다.

그리고 코드의 맨 뒤에는 마침표를 찍어주는데 그 역할을 ; 세미 콜론이 하게 된다

후에 상단에 누가 봐도 실행을 할 수 있을 것 같은 버튼 초록색 바탕에 하얀색 재생 모양이 들어가 있는 버튼을 눌러보자

그럼 하단에 콘솔이 열리면서 다음과 같이 Hello World! 가 잘 출력된 걸 볼 수 있다

 

이제 여러분은 프로그래머다!

'Back-end > JAVA' 카테고리의 다른 글

6. 입출력  (0) 2021.06.09
5. 타입 변환  (0) 2021.06.09
4. 변수의 타입  (0) 2021.06.09
3. 변수(Variable)  (0) 2021.06.09
1. JAVA(JDK) 설치  (0) 2021.06.07

+ Recent posts