사놓고 쌓아놓은 물건처럼, 정리를 하지않으니 배운 정보들이 난잡하게 느껴진다.
DB, 배운 정보들을 꾸준히 정리해보자. DB구조와 SQL를 학습하기 위해 MySQL을 사용한다.
공짜로 이용할 수 있는 플랫폼이기도하고 SQL문이 DBMS종류마다 조금씩 다르지만 큰 틀은 비슷하기에 처음에 공부하기 좋다고 생각한다.
테이블을 만드는 방법은 여러가지가 있는데 먼저 MySQL Workbench를 이용해서 만들 수 있다.
테이블을 스키마 안에 정의된다. 스키마는 하나의 틀이라고 생각하면 된다.
따라서 간단하게 말하자면 스키마를 만들고 그 스키마에 테이블을 만든다. 그 후에 이 테이블에 값들을 집어넣으면 된다.
Workbench를 이용하면 명령문을 몰라도 사용할 수 있다. 원하는 명령을 누르면 명령어, SQL문이 자동으로 입력된다.
전체적인 개념만 알고있다면 간단하게 만들 수 있다.
또 다른 방법은 cmd를 이용하는 것이다.
윈도우 검색창에 cmd를 검색하면 command창, 명령 프롬프트창이 뜬다.
여기에 다음과 같은 순서로 입력하면 된다.
- 접근하기
> mysql -u 사용자이름 -p // 사용자로 mysql에 접근한다. 가지고 있는 권한만큼 mysql에 접근할 수 있다.
Enter password: 비밀번호
> use testdb1; // testdb1이라는 스키마를 사용할 것이다.
> show tables; // 해당 스키마의 테이블들을 다 보여준다.
- 테이블 생성하기
> CREATE TABLE CUSTOMER(c_no VARCAR(10) NOT NULL,
city VARCHAR(30) NOT NULL,
age INT,
CONSTRAINT cu_no_pk PRIMARY KEY(c_no));
// customer라는 테이블을 만들었다. c_no, city, age라는 컬럼(속성)이 있고 c_no column이 primary key역할을 한다.
> CREATE TABLE deposit(
d_cust_no VARCHAR(13) NOT NULL,
d_account_no CHAR(8) NOT NULL,
d_serial_no DECIMAL(5) NOT NULL,
d_amount DECIMAL(13) NOT NULL,
d_date DATE NOT NULL,
CONSTRAINT deposit_pk PRIMARY KEY(d_cust_no, d_account_no, d_serial_no),
CONSTRAINT de_cust_no_fk FOREIGN KEY(d_cust_no) REFERENCES customer(c_no),
CONSTRAINT de_loan_no_fk FOREIGN KEY(d_account_no) REFERENCES account(a_no));
- 값 넣기
> INSERT INTO customer VALUES('1111', '익산', '23');
> INSERT INTO customer(c_no, city) VALUES ('123213', '서울');
// 전체값을 넣어주거나 not null에 해당하는 값만 넣어줄 수도 있다.
막 쓰다보니 알고있는 사람도 보기싫게 정리해버렸다.
어디서부터 어떻게 설명해야할지 감이 안잡히다보니 그런 것 같다. 물론 내가 100%숙지하지 못하고 있기도하다.
점차 나아지겠다는 생각으로 꾸준히 써보자.
'DataScience > DataBase' 카테고리의 다른 글
SQLD 합격 후기 (0) | 2023.07.07 |
---|---|
CREATE TABLE, REPLACE INTO (0) | 2022.04.28 |
MariaDB, Heidisql 설치 / pymysql 사용 (0) | 2022.04.26 |
댓글