1.데이터 베이스 생성하기
- 테이블을 생성하기 이전에 데이터베이스가 생성되어 있어야한다.
-'creatye database <데이터베이스명>'명령어를 통해 데이터베이스 생성
MariaDB [(none)]> create database MOGI;
Query OK, 1 row affected (0.000 sec)
-'show databases;' 명령어를 통해 생성된 데이터 베이스 확인
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| MOGI |
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.000 sec)
-생성한 데이타 베이스안에 테이블을 생성하기위해 'use <데이터베이스명>'명령어로 해당 데이터베이스로 이동
MariaDB [(none)]> use MOGI
Database changed
MariaDB [MOGI]>
2.테이블 생성하기
-아래와 같이 테이블 생성
[ CREATE TABLE <테이블명> ( <컬럼명> <데이터타입> <옵션> <제약조건> );
MariaDB [MOGI]> CREATE TABLE member(
-> no int auto_increment not null primary key,
-> name char(20),
-> user_id varchar(20) unique,
-> password varchar(40) default "qwe123!@#",
-> in_date datetime not null);
Query OK, 0 rows affected (0.063 sec)
-'show tables;' 명령어를 통해 생성확인
MariaDB [MOGI]> show tables;
+----------------+
| Tables_in_MOGI |
+----------------+
| member |
+----------------+
1 row in set (0.001 sec)
-'desc <테이블명>' 명령어로 생성된 테이블 구조 확인
MariaDB [MOGI]> desc member;
+----------+-------------+------+-----+-----------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+-----------+----------------+
| no | int(11) | NO | PRI | NULL | auto_increment |
| name | char(20) | YES | | NULL | |
| user_id | varchar(20) | YES | UNI | NULL | |
| password | varchar(40) | YES | | qwe123!@# | |
| in_date | datetime | NO | | NULL | |
+----------+-------------+------+-----+-----------+----------------+
5 rows in set (0.001 sec)
-테이블 데이터 타입과 제약조건-
[데이터타입-숫자형]
타입 | 크기 | 데이터 |
bool , boolean | 1byte | 참(true)/거짓(false) |
tinyint | 1byte | 정수 |
int , integer | 4byte | 정수 |
bigint | 8byte | 정수 |
float | 4byte | 부동소수점(실수) |
double | 8byte | 부동소수점(실수) |
bit(n) | (n)bit | 정수 |
[데이터타입-문자형]
타입 | 크기 |
char(n) | (n) byte 고정형 최대 2^8 byte |
varchar(n) | (n) byte 가변형 최대 2^8 byte |
text | 2^16 byte |
longtext | 2^32 byte |
[데이터타입-날짜형]
타입 | 형식 |
date | YYYY-MM-DD |
time | HH:MM:SS |
datetime | YYYY-MM-DD HH:MM:SS |
timestamp | YYYY-MM-DD HH:MM:SS |
year | YYYY |
[제약조건]
- 데이터의 무결성을 지키기 위해 제한된 조건
- 테이블 및 컬럼 에 적용가능
조건 | 기능 |
NOT NULL | NULL 값 사용 제한 |
UNIQUE | 테이블 내에서 해당 column의 값이 유일하도록 설정(중복 불가능) |
PRIMARY KEY(기본키) | 테이블의 각 행을 고유하게 식별하는 값(UNIQUE + NOT NULL) |
FOREIGN KEY(외래키) | 두 테이블의 데이터 간 연결을 설정하고 강제 적용하여 외래 키 테이블에 저장될 수 있는 데이터를 제어 |
CHECK | 해당 column에 저장 가능한 데이터 값의 범위나 조건 지정 |
'DB' 카테고리의 다른 글
[centos/mariadb] scv파일을 이용하여 테이블에 insert하기 (0) | 2020.05.31 |
---|---|
[mysql/mariadb] mysql,mariadb 계정 및 권한 설정하기 (0) | 2020.05.03 |
[mariadb] centos에 mariadb 설치하기 (0) | 2020.05.03 |