일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 타입 변수 표기법
- 데이터베이스
- 요청
- unity 오브젝트
- http
- unity 레이아웃
- response
- select
- request
- @ Builder
- WriteLine
- C#
- spring
- 메소드 정의
- DROP
- Database
- unity 간단 설정
- final
- static을 왜사용할까?
- Create
- MariaDB
- static
- db
- JDBC
- java
- 메소드 지정자
- 평면좌표상에서 두점 거리 구하기
- 타입이 서로 다른 두 데이터 제네릭
- ForignKey
- c#상속
- Today
- Total
목록Database (16)
이론을 싫어!
SQL 문법 INSERT INTO 테이블명(컬럼1,컬럼2,...) VALUES(값1,값2,...); 예시) 로그인 테이블을 생성한다 . 위의 사진 처럼 테이블을 만든후 데이터를 넣기 위해서 INSERT를 사용한다. 위 사진 처럼 생성 후 실행을 후 ERROR 가 뜨지 않으면 정상적으로 데이터를 들어가게 된다. !! 간혹 가다가 위의 사진처럼 컬럼명을 빼고 순서대로 적는 경우도 있지만 좋은 방법은 아니다. 그 이유는 데이터베이스는 관리자 편리성 보다 더 중요한것이 데이터 저장하기 위함이기 떄문에 정확하게 지정 후 하는것이 좋다. 그 다음 데이터가 정확하게 들어갔는지 확인하기 위해서 SELECT * FROM login_member; 실행 하면 정상적으로 데이터가 들어간것을 볼수 있다.
Forign Key(FK) 외부 식별자키로 테이블 간의 종속 관계 이다. 특징 - 중복 불가, NULL 불가 조금 더, 쉽게 설명을 하자면 중복되는 값을 없애기 위함이다. 우리가 회원가입 하기 위해서 아이디와 패스워드를 생성을 해야되는데 같은 아이디는 생성을 할 수가 없는데 그 뜻을 FK 라고 한다. 예시 pk 설정은 두가지 방법이 있다. 테이블을 생성해 준다. 1번 방법 2번 방법 테이블을 생성후 데이터를 넣는다. 데이터를 넣은 후 다시 한번 똑같은 데이터를 들어가게 되면 에러가 뜬다. 그 이유는 email 이라는 컬럼에 pk를 설정했는데 똑같은 데이터가 들어가 있기 떄문에 컴퓨터가 '너 이거 중복데이터인데 잘못 된거같아!' 라고 알려주는 것이다. 저기서 email를 변경해서 다시 데이터를 넣어주게 되..

JOIN 문 여러 테이블을 함께 조회하기 위함이다. 일반적으로 사용되는 SQL문장의 상단수가 조인을 이용한다. JOIN은 관계형 데이터베이스의 가장 큰 장점이면선 핵심 기능이다. JOIN은 두 데이블을 연결해서 뎅티어를 검색하는 방법이다. 연결하려는 테이블들이 적어도 하나의 컬럼을 공유하고 있어야한다. 그리고 그 공유된 컬럼은 pk 또는 fk값으로 사용해야 한다. JOIN은 4가지로 분류된다. INNER JOIN. / FULL JOIN LEFT JOIN. / RIGHT JOIN INNER JOIN은 교집합의 연산과 같으며 조인 키 컬럼 값이 양쪽 테이블 집합에서 공통적으로 존재하는 테이터만 조인해서 결과 데이터 집합으로 출력하게 된다. 예시) 기본 테이블 member테이블 생성및 데이터 출력 CREATE..
alias 별명이다. 말 그대로 부르기 쉽게 하기위함이다. 예를 들어 테이블이 대한 별명 , 컬럼에 대한 별명 AS 키워드를 이용해서 사용한다. 예시) 위의 사진처럼 실행을 할수 있다는 것이다. 뜻은 login_member의 테이블의 별명을 lm으로 설정을 해주고 lm.name 은 별명으로 설정해둔 lm의 별명인 login_member 안에 name 의 컬럼명을 조회한다는 뜻을 가지고 있다. 실행을 하게되면 결과가 나오게 된다. 또한 한글로도 쓸수 있다 예시) 위에 사진처럼 SQL문을 싱행하게 되면 컬럼명이 영어가 아닌 한글로 변경될 수 있다는것을 볼수있다.
데이터는 엄청 많기 때문에 한꺼번에 모든 데이터를 볼 수가 없다. mysql,mariadb의 경우는 limit를 이용해서 페이징 처리가 가능하다. 예시) 데이터의 갯수가 많아야 되지만 5개의 데이터가 있다고 가정한다. 여기서 limit 를 붙여주며 시작지점과 몇개까지 보여줄건지 정하면된다. 사진에서는 limit(0,2) 라고 되어져있는데 0번 부터 2개출력 이다. 실행을 하게되면 결과값이 나오는걸 볼수 있다. 첫 시작 로우는 우리가 봤을때는 1이지만 사실 1이 아니라 0으로 해주어야 올바른 값을 출력 할수 있다.
View 테이블 실질적으로 존재하는 테이블이 아니라 정의만 가지고 있다. 뷰는 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블이다. View 테이블은 읽기만 가능하다. 장점 설명 독립성 테이블 구조가 변경되어도 뷰를 사용하는 응용 프로그램은 변경하지 않아도 된다. 편리성 복잡한 쿼리를 뷰로 생성함으로써 관련 질의를 단순하게 작성할 수 있다. 보안성 권한에 따로 표시하지 않아야 하는 컴럼의 경우 숨길 수 있다 1 2 create view 뷰테이블명 as 쿼리작성; cs 예시) member 테이블 memberdetail테이블 두개의 테이블이 있다고 가정한다. 이둘의 테이블을 join을 해서 view로 생성을 하게 되면 위의 사진처럼..

날짜 -> 문자열 변환: date_format 문자열 -> 날짜 변환 : str_to_date 날짜 변환 : date_add date_format 위의 사진처럼 데이터가 들어가 있다고 가정하면 여기서 날짜를 문자열로 표시가 가능하다. 1 SELECT register_date ,DATE_FORMAT(register_date, '%Y.%m.%d') as dt_format from member_detail md; cs 위의 사진 처첨 date_format을 사용 하면 가능하다. '%Y' 은 년도를 나타내는 것이고 '%m'는 월을 나타내는 것이다. 그리고 '%d'는 일을 나타내는 것이다. 그리고 중간에 .을 붙이는 이유는 년 월 일을 구분하기 위해서이다. 실행을 하게 된다면 위의 사진처럼 출력이 되는것을 볼수 ..

예시) 비밀먼호 앞 두자리 외에 *처리 하기 concat 함수 (문자열을 연결하고 싶을 때 사용) concat 함수는 어떤 DBMS냐에 따라 매개변수를 두 개만 받기도 하고 여러개를 허용해주기도 하기 때문이다. 위의 사진 SQL문을 보게 되면 CONCAT(SUBSTRING(password,1,2,),'**') 을 볼수 있는데 SUBSTING 은 데이터를 일부 읽어온다는 뜻을 가지고 있다. 즉, password 데이터를 1에서 2까지 만 일거오고 나머지 뒤에 문자열 ** 붙이겠다는 뜻을 가지고 있다. 실행을 하게 되면 위의 사진처럼 나오는 걸 볼수 있다. 근데 여기서 문제점은 비밀번호가 없는데 ** 출력되는걸 볼수 있다. 여기서 비밀번호가 없는 곳은 출력이 되지 않게 하기 위해서ㅡㄴ CASE WHEN 을 ..

데이터는 관계형 데이터베이스의 기본 단위인 테이블 형태로 저장된다. 모든 자료는 테이블에 등록되고, 테이블로부터 원하는 자료를 꺼내 온다. 테이블은 어느 특정한 주제와 목적으로 만들어지는 일종의 집합이다. 새로운 데이터를 입력할 때, 새로운 테이블을 생성할 필요 없이 테이터만 추가하면 된다. 0 x x x x x x 테이블을 보면 o이라고 되어져있는데 이것을 컬럼 또는 필드(속성) 이라고 부른다. 그리고 그 밑으로는 x 가로로 되어져 있는데 그것을 로우 또는 튜플, 레코드 라고 부른다. 좀 더 쉽게 설명하면 테이블 맨 위에 있는 줄은 컬럼 또는 필드(속성)이라고 부르고 그 나머지 가로줄은 로우또는 레코드, 튜플 이라고 한다. 그러면 컬럼과 튜플은 무엇일까? > 컬럼 - 필드,항목, 어떠한 의미를 지니는 ..

일단 UPDATE의 기본 SQL 문법은 1 UPDATE 테이블명 SET 컬럼1=값1, 컬럼2=값2,...; cs 이다. 실습을 통해서 한번 배워보도록 하자. 기존에 login_member 테이블을 조회하게 되면 위의 사진 처럼 결과가 나온다. 여기서 marketing_yn 컬럼을 UPDATE 할 예정이다. (툴마다 true,false 또는 0,1로 표시가 된다고 한다) 지금은 marketing_yn의 데이터에 1 즉, true가 들어가 있다. 1 UPDATE login_member set marketing_yn = false; cs 바로 위의 SQL문을 실행을 시킨후 ERROR가 발생하지 않았다면 login_member 테이블을 조회하게 된다면 meketing_yn 에 1이 0으로 즉, true 에서 f..