CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...
);
ALTER TABLE table_name
ADD column_name datatype;
DROP TABLE table_name;INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
DELETE FROM table_name WHERE condition;
SELECT column1, column2, ...
FROM table_name
WHERE condition;GRANT privilege_name
ON object_name
TO user_name;
REVOKE privilege_name
ON object_name
FROM user_name;
COMMIT;
ROLLBACK;mysql> SHOW DATABASES;

CREATE DATABASE testdb;

USE testdb;

DROP DATABASE testdb;

# USER테이블에서 HOST와 USER 정보 가져오기
SELECT HOST, USER FROM USER;

CREATE USER 'NOMA'@'LOCALHOST' IDENTIFIED BY '1234';
USER이름이 같아도 HOST가 다르면
(EX, 외부접속가능한 USER, 로컬에서만 접속가능한 USER)
에러나지 않는다
CREATE USER 'NOMA'@'%' IDENTIFIED BY '1234';

DROP USER 'NOMA'@'%';
DROP USER 'NOMA'@'LOCALHOST';

CREATE DATABASE testdb;
Query OK, 1 row affected (0.01 sec)
# 유저정보는 MYSQL데이터베이스에서만 접근가능하기 때문에
# USE MYSQL;로 DB에 접근
use mysql;
Database changed
CREATE USER 'noma'@'localhost' IDENTIFIED BY '1234';
Query OK, 0 rows affected (0.01 sec)
SELECT HOST,USER FROM USER;
mysql> SHOW GRANTS FOR 'noma'@'localhost';
+------------------------------------------+
| Grants for noma@localhost |
+------------------------------------------+
| GRANT USAGE ON *.* TO `noma`@`localhost` |
+------------------------------------------+
1 row in set (0.00 sec)

mysql> GRANT ALL ON testdb.* TO 'noma'@'localhost';
Query OK, 0 rows affected (0.01 sec)
mysql> SHOW GRANTS FOR 'noma'@'LOCALHOST';
+----------------------------------------------------------+
| Grants for noma@localhost |
+----------------------------------------------------------+
| GRANT USAGE ON *.* TO `noma`@`localhost` |
| GRANT ALL PRIVILEGES ON `testdb`.* TO `noma`@`localhost` |
+----------------------------------------------------------+
2 rows in set (0.00 sec)

mysql> REVOKE ALL ON testdb.* FROM 'noma'@'LOCALHOST';

mysql> CREATE DATABASE zerobase DEFAULT CHARACTER SET utf8mb4;
Query OK, 1 row affected (0.01 sec)
## DEFAULT CHARACTER SET utf8mb4;이것은 UTF8MB4라는 인코딩쓰겠다는것


## CREATE TABLE TABLENAME(ID INT, NAME VARCHAR(16));
## ID(정수형)와 NAME(가변문자형) 칼럼을 가진 TABLE을 생성
mysql> CREATE TABLE mytable
-> (
-> id int,
-> name varchar(16)
-> );
Query OK, 0 rows affected (0.03 sec)
mysql> SHOW TABLES;
+------------------------------------------------------+
| Tables_in_mysql |
+------------------------------------------------------+
| columns_priv |
| component |
| db |
| default_roles |
| engine_cost |
| func |
| general_log |
| global_grants |
| gtid_executed |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| innodb_index_stats |
| innodb_table_stats |
| mytable |
| ndb_binlog_index |
| password_history |
| plugin |
| procs_priv |
| proxies_priv |
| replication_asynchronous_connection_failover |
| replication_asynchronous_connection_failover_managed |
| replication_group_configuration_version |
| replication_group_member_actions |
| role_edges |
| server_cost |
| servers |
| slave_master_info |
| slave_relay_log_info |
| slave_worker_info |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+------------------------------------------------------+
39 rows in set (0.00 sec)
mysql> DESC MYTABLE;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int | YES | | NULL | |
| name | varchar(16) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
