21_SQL 기초 1

김정연·2023년 7월 6일
0

데이터스쿨

목록 보기
22/30

SQL이란?
데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어

• 데이터 정의 언어 (DDL: Data Definition Language)

CREATE, ALTER, DROP 등의 명령어

• 데이터 조작 언어 (DML: Data Manipulation Language)

INSERT, UPDATE, DELETE, SELECT 등의 명령어

• 데이터 제어 언어 (DCL: Data Control Language)

GRANT, REVOKE, COMMIT, ROLLBACK 등의 명령어


📌 Database 관리

  • root 계정으로 mysql 에 접속
mysql -u root -p
  • 현재 database 목록 확인
SHOW DATABASES;
  • Database 이름을 지정하여 생성 (db이름:testdb)
CREATE DATABASE testdb;
  • 해당 데이터베이스로 이동 (사용)
USE testdb;
  • 데이터베이스 삭제
DROP DATABASE testdb;

📌 User 관리

  • User 조회
#사용자 정보는 mysql 에서 관리하므로 일단 mysql 데이터베이스로 이동후 조회

USE mysql;
SELECT host, user FROM user;
  • User 생성
# 현재 PC 에서만 접속 가능한 사용자를 비밀번호와 함께 생성
# username = noma, password = 1234

CREATE USER 'noma'@'localhost' identified by '1234';

--------------------------------------

# 외부에서 접속 가능한 사용자를 비밀번호와 함께 생성 
# username = noma, password = 1234

CREATE USER 'noma'@'%' identified by '1234';
  • User 삭제
# username = noma

DROP USER 'noma'@'localhost';
DROP USER 'noma'@'%';
  • 사용자에게 부여된 모든 권한 목록을 확인
# username = noma

SHOW GRANTS FOR 'noma'@'localhost';
  • 사용자에게 특정 데이터베이스의 모든 권한을 부여
# username = noma, db = testdb

GRANT ALL ON testdb.* to 'noma'@'localhost';
  • 사용자에게 특정 데이터베이스의 모든 권한을 삭제
# username = noma, db = testdb

REVOKE ALL ON testdb.* from 'noma'@'localhost';
  • 참고 - 수정내용이 적용이 되지 않은 경우 새로고침
FLUSH PRIVILEGES;

📌 Table 생성

  • 한글이 포함된 테이블이 포함된 데이터베이스 생성
CREATE DATABASE testdb DEFAULT CHARACTER SET utf8mb4;
  • id(int)와 name(varchar(16)) 칼럼을 가지는 mytable 이라는 이름의 테이블 생성
  • Table 목록 확인
SHOW tables;
  • Table 정보 확인
DESC mytable;


📌 Table 변경

  • Table 이름 변경
ALTER TABLE tablename
RENAME newtablename;
  • Table Column 추가
ALTER TABLE tablename
ADD COLUMN columnname datatype;
  • Table Column 변경 - DataType 변경
ALTER TABLE tablename
MODIFY COLUMN columnname new_datatype;
  • Table Column 변경 - Name 변경
ALTER TABLE tablename
CHANGE COLUMN old_columnname new_columnname new_datatype;
  • Table Column 삭제
ALTER TABLE tablename
DROP COLUMN columnname;
  • TABLE 삭제
DROP TABLE tablename;

출처: 제로베이스

0개의 댓글