Purple Bobblehead Bunny

Database 13

[MySQL] 사용자 정의 변수

🚀 쿼리문을 짜면, 임의로 변수 선언이 필요 해 진다 변수 이름은 alphanumeric 문자와 ' _ ', ' $ ', ' , '로 구성이 된다. alphanumeric 문자란? http://www.ktword.co.kr/test/view/view.php?m_temp1=4061 알파뉴메릭 코드 Alphanumeric Code, Numeric Code 알파뉴메릭 코드, 영숫자 부호, 수치 코드, 2진 코드, 이진 코드, 2진 부호, 이진 부호, M진 코드, M진 부호(2022-02-02) www.ktword.co.kr 변수에는 초기값이 지정되지 않고 null = default, Integer, real, String으로 값을 저장할 수 있다. 변수 이름은 ver5.0부터 대소문자 구분이 없어진다. 🚀 @..

Database 2023.02.03

[OracleDB] 시퀀스(Sequence)

시퀀스(Sequence) 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체 보통 PK값에 중복값을 방지하기 위해 사용 한다. 게시판에 글이 하나 추가가 될 때 마다, 글 번호(Primary key)가 생겨야 한다. 100번까지 글 번호가 생성되어 있다면, 다음 글이 추가 될 때 마다 번호 101로 하나의 row를 생성해야 하는데, 이 때 그 숫자를 받으려면 +1을 하는 로직을 넣어줘야 하는데 시퀀스를 사용하면 데이터베이스에 row가 추가 될 때 마다 자동으로 +1을 시켜줘서 편리하다. -- 사용법 create sequence [시퀀스명] increment by [증감숫자] -- 증감숫자가 양수면 증가, 음수면 감소 디폴트는 1 start with[시작숫자] -- 시작숫자의 디폴트값은 증가일 ..

Database 2022.05.25

[OracleDB] JOIN

JOIN은 각 테이블간에 공통된 조건으로 데이터를 합쳐 표현하는 것 JOIN은 테이블들에 관계를 부여하고, 그 데이터를 조작하고자 함에 있다. JOIN에는 크게 INNER JOIN, OUTER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN이 있다. INNER JOIN은 교집합 연산과 같다. 조인 키 컬럼 값이 양쪽 테이블 데이터 집합에서 공통적으로 존재하는 데이터만 조인해서 결과 데이터 집합으로 추출 이너조인은 생략이 가능하고, 콤마로 나타낼 수 있다. -- 사용법 select 열이름 from 테이블A inner join 테이블B on 조건식; -- ex select * from member,store from member.membernum = st..

Database 2022.05.25

[OracleDB] 제약조건

제약조건 컬럼에 대한 속성을 정의하고, 테이블의 부적절한 데이터가 입력되는 것을 방지하기 위해 정의한 규칙 데이터의 무결성을 보호하기 위해 사용 한다. 제약조건에 대해 오류가 발생했을 때, 제약조건에 이름이 오류내용에 출력이 되는데 오라클에서 자동으로 지정해준 이름이기 때문에, 코드번호로 적혀있어 외우고 있지 않으면 사용자는 알 수 없다. 사용자가 특정한 이름을 지정해주면 오류가 발생한 제약조건에 대해 더 빨리 찾을 수 있다. 제약조건 종류 Primary Key 제약 조건(관계형성관련 제약) Foreign Key 제약 조건(관계형성관련 제약) UNIQUE 제약조건 CHECK 제약 조건(MySQL 8.0.16부터 정식 지원) DEFAULT 정의 NULL 값 허용 -- 제약조건 이름 지정 예시 1 CREAT..

Database 2022.05.21

[OracleDB] SELECT

용도 -> 데이터 검색, 칼럼을 가공 처리하여 조회 가능 테이블 전체 조회 select * from 테이블명; 테이블 내의 몇가지 컬럼 조회 select 칼럼1, 칼럼2 from 테이블명; 테이블 내의 몇가지 칼럼 중 특정 데이터만 조회 select 칼럼1, 칼럼2 from 테이블명 where 칼럼3="값"; 칼럼에 별칭을 붙여 조회 select 칼럼1 "별칭1", 칼럼2 as "별칭2" , 칼럼 별칭3 from 테이블명; (3가지 방법이 있지만, 공백이나 특수문자등이 있을 땐 쌍다옴표 꼭 사용) [distinct] 중복된 값 제거하고 조회 select DISTINCT 칼럼1, 칼럼2 from 테이블명; || 연결 연산자로 칼럼 붙여서 조회 select 칼럼1||칼럼2 from 테이블명; [order b..

Database 2022.05.15

[OracleDB] SQL 종류 (DDL.DML.DCL)

DDL - Data Definition Language - 데이터베이스 개체를 생성/삭제/변경하는 역할 - CREATE, DROP, ALTER... DML - Data Manipulation Language - 데이터를 조작(선택, 삽입, 수정, 삭제) 하는데 사용되는 언어 - SELECT, INSERT, UPDATE, DELETE ... DCL - Data Control Language - 권한부여/철회에 사용되는 구문 - GRANT/REVOKE/DENY DDL 1. 테이블 컬럼 추가 (ALTER TABLE ADD) //ALTER TABLE 테이블명 ADD(컬럼명 데이터타입(사이즈)); //USER 테이블에 USER_NAME 컬럼을 VARCHAR 타입으로 추가 ALTER TABLE USER ADD(US..

Database 2022.05.14

[OracleDB] 기본 CRUD

DATA TYPE 문자 데이터 타입 데이터타입 설명 CHAR(n) 고정길이 문자 / 최대 2000byte / 디폴트 값은 1byte VARCHAR2(n) 가변길이 문자 / 최대 4000byte / 디폴트 값은 1byte NCHAR(n) 고정길이 유니코드 문자(다국어 가능) / 최대 2000byte / 디폴트 값은 1byte NVARCHAR(n) 가변길이 유니코드 문자(다국어 가능) / 최대 2000byte / 디폴트 값은 1byte LONG 최대 2GB 크기의 가변 길이 문자형 CLOB 대용량 텍스트 데이터 타입(최대 4Gbyte) NCLOB 대용량 텍스트 데이터 타입(최대 4Gbyte) 가변 길이 : 실제 이볅 된 데이터 길이에 따라서 크기가 변하는 것을 의미 숫자형 데이터 타입 데이터 타입 설명 NU..

Database 2022.05.13

[MySQL] WorkBench ERD Diagram

WorkBench 모델링 Tool 사용하기 MySQL의 WorkBench를 사용하면 ERD를 통해 DB 스키마를 모델링 할 수 있다. 모델링한 ERD는 WorkBench 전용 모델링 파일로 저장해두고 나중에 다시 사용가능하며, 모델링 한 ERD를 통해 자동으로 쿼리를 추출하고, 이를 통해 실제 물리적인 DB 스키마를 생성할 수 있다. root 계정으로 접속을 한 뒤 File -> New Model 을 클릭한다. Model Overview -> Add Diagram 테이블 Diagram이 하나 만들어 진다. 테이블을 더블클릭 하게 되면, 하단에 스키마 에디터 탭이 보이게 된다. 여기서 테이블 명, 여러 컬럼을 만들 수 있고, 컬럼에 대한 제약조건을 추가 할 수 있다. 컬럼명을 입력하거나, 제약조건을 체크하..

Database 2022.04.12

[MySQL] 사용자 추가, 권한 부여,권한 제거

db를 사용하면 사용자를 생성하고 각 사용자에 맞게 권한을 부여하는 것이 중요하다. 권한은 스키마,테이블에 대한 권한 부터 여러 기능에 대한 권한까지 다양하게 부여할 수 있다. mysql -u root -p use mysql; mysql 서버에 로그인 후, mysql 스키마를 선택한다. select from 문을 이용하여 그 결과 사용자의 목록을 조회할 수 있다. create user username@ip identified by 'password'; 를 통해 host에 사용자를 추가한다. username과 password에 원하는 계정의 정보를 넣어준다. ip는 특정 ip에서의 접속을 허용하는데 사용한다. 로컬에서 접근하기 위한 계정은 localhost를 사용하고, 외부에서 접근하는 것은 그에 맞는 i..

Database 2022.04.03

[MySQL] CMD(명령 프롬프트)

기본명령어 mysql -u 계정 -p 데이터베이스 우선 cd로 MysSQL 경로를 지정 해줘야 한다. 계정을 따로 만들지 않았거나, 최상위 계정으로 접속을 할려면 계정을 root로 쓰면 된다. Enter password가 뜨게 되면, root 계정의 비밀번호를 입력을 하면 된다. 근데 여기서 매번 경로를 설정해주면 번거롭다. 그래서 환경 변수를 사용하게 된다. C:\Program Files\MySQL\MySQL Server 8.0\bin 경로를 복사한 후 고급시스템설정으로 들어간 후에 환경 변수를 들어가, Path의 변수 값을 복사한 Mysql 경로를 붙여넣는다. 그리고 다시 실행을 해서 입력을 하면 훨씬 간편해졌다. 이제 DB와 그 DB 안에 테이블을 만들어 본다. 우선 show databases; 를..

Database 2022.04.02