SQL명령어 & Id/pw설정
<<추가>>
PRIMARY KEY = UNIQUE //같은이름ㄴㄴ
부서명보다 부서번호가 바뀔일 없어서 좋음.
SELECT *
FROM ddd
INNER JOIN ggg; //두 테이블에서 합쳐서 가져올 수 있음
ON emp.deptId = dept.id; //다 안가져오고 원하는것만
<<SQL id/pw 설정>>
GRANT ALL PRIVILEGES ON *.* TO 'sbsst'@'%' IDENTIFIED BY 'sbs123414';
GRANT ALL PRIVILEGES ON *.* TO 'sbsst'@'localhost' IDENTIFIED BY 'sbs123414';
<<SQL>>
데이터베이스 or 테이블
USE 사용 / SHOW 리스팅 / DESC 구조확인 / SELECT로 선택해서 조회
CREATE 생성 / ALTER TABLE 테이블구조변경 / ADD COLUMN 칼럼추가 / DROP 삭제 /
데이터
INSERT INTO-SET : 추가(작성) / UPDATE-SET-WHEREorLIMIT : 수정 / DELETE FROM-where 데이터삭제
통용
AFTER a a뒤에 / FIRST 첨 / IF EXISTS 만약 있다면 / DATETIME 날짜 / NOW() 지금날짜
# 전체 데이터베이스 리스팅
SHOW DATABASES;
# `mysql` 데이터 베이스 선택
USE mysql;
# 테이블 리스팅
SHOW TABLES;
# 특정 테이블의 구조
DESC `user`;
# `test` 데이터 베이스 선택
USE test;
# 테이블 리스팅
SHOW TABLES;
# 기존에 a1 데이터베이스가 존재 한다면 삭제
DROP DATABASE IF EXISTS `a1`;
# 새 데이터베이스(`a1`) 생성
CREATE DATABASE `a1`;
USE `a1`;
# 데이터베이스 추가 되었는지 확인
SHOW DATABASES;
# 테이블 확인
SHOW TABLES;
# 게시물 테이블 article(title, body)을 만듭니다.
# VARCHAR(100) => 문자 100개 저장가능
# text => 문자 많이 저장가능
CREATE TABLE article (
title VARCHAR(100),
`body` TEXT
);
# 잘 추가되었는지 확인, 리스팅과 구조까지 확인
SHOW TABLES;
DESC article;
# 데이터 하나 추가(title = 제목, body = 내용)
INSERT INTO article
SET title = '제목',
`body` = '내용';
# 데이터 조회(title 만)
SELECT title
FROM article;
# 데이터 조회(title, body)
SELECT title, `body`
FROM article;
# 데이터 조회(body, title)
SELECT `body`, title
FROM article;
# 데이터 조회(*)
SELECT *
FROM article;
# 데이터 또 하나 추가(title = 제목, body = 내용)
INSERT INTO article
SET title = '제목',
`body` = '내용';
# 데이터 조회(*, 어떤게 2번 게시물인지 알 수 없음)
SELECT *
FROM article;
# 테이블 구조 수정(id 칼럼 추가, first)
ALTER TABLE article ADD COLUMN id INT(10) FIRST;
# 데이터 조회(*, id 칼럼의 값은 NULL)
SELECT *
FROM article;
# 기존 데이터에 id값 추가(id = 1, id IS NULL)
UPDATE article
SET id = 1
WHERE id IS NULL;
# 데이터 조회(*, 둘다 수정되어 버림..)
SELECT *
FROM article;
# 기존 데이터 중 1개만 id를 2로 변경(LIMIT 1)
UPDATE article
SET id = 2
LIMIT 1;
# 데이터 조회(*)
SELECT *
FROM article;
# 데이터 1개 추가(id = 3, title = 제목3, body = 내용3)
INSERT INTO article
SET id = 3,
title = '제목3',
BODY = '내용3';
# 데이터 조회(*)
SELECT *
FROM article;
# 2번 게시물, 데이터 삭제 => DELETE
DELETE FROM article
WHERE id = 2;
# 데이터 조회(*)
SELECT *
FROM article;
# 날짜 칼럼 추가 => regDte DATETIME
ALTER TABLE article ADD COLUMN regDate DATETIME AFTER id;
# 테이블 구조 확인
DESC article;
# 데이터 조회(*, 날짜 정보가 비어있음)
SELECT *
FROM article;
# 1번 게시물의 비어있는 날짜정보 채움(regDate = 2018-08-10 15:00:00)
UPDATE article
SET regDate = '2018-08-10 15:00:00'
WHERE id = 1;
# 데이터 조회(*, 이제 2번 게시물의 날짜 정보만 넣으면 됩니다.)
SELECT *
FROM article;
# NOW() 함수 실행해보기
SELECT NOW();
# 3번 게시물의 비어있는 날짜정보 채움(NOW())
UPDATE article
SET regDate = NOW()
WHERE id = 3;
# 데이터 조회(*)
SELECT *
FROM article;
<<ALTER TABLE 테이블구조변경>>
ALTER TABLE [테이블명] ADD COLUMN [칼럼명] [칼럼변수타입]; => 칼럼추가
ALTER TABLE [테이블명] DROP COLUMN [칼럼명]; => 칼럼삭제
ALTER TABLE [테이블명] CHANGE [칼럼명] [변경할 칼럼명] [칼럼변수타입]; => 칼럼명변경 및 타입변경
ALTER TABLE [테이블명] MODIFY [칼럼명] [칼럼변수타입]; => 칼럼타입수정
ALTER TABLE [테이블명] RENAME [변경할 테이블명]; => 테이블명수정