DB_004_mySQL_CRUD

AMJ·2023년 3월 31일
0

db_log

목록 보기
4/14

CRUD

  • Create / Read / Update / Delete

DDL

  • Table & DB 조작

DML

  • Data_Row 조작

조회

# DB 
	SHOW DATABASES;
# TABLE
	SHOW TABLES;
    # LIKE(문자패턴 검색) %(모든 문자), _(_수 만큼 문자수 특정) 
	SHOW TABLES LIKE 'ar%' # ar로 시작하는 %(모든문자) 
	# 테이블에 있는 특정colume(article) 조회(DESCribe)
	DESC article; 
# ROW
	SELECT id, regDate		# id, regDate 
	FROM article			# article 테이븛에서
	WHERE id >= 4 			# id가 4이상이고
	AND title LIKE '제%'	# '제'로 시작하고 
	# 정렬방식 ASC(오름차순), DESC(내림차순)
    ORDER BY id DESC 		# id기준 내림차순 정렬
	LIMIT 3; # 3줄까지 보여줌

생성

# DB 
	# new_database 생성
	CREATE DATABASE `new_database`;
# TABLE
	# article table 생성
	CREATE TABLE article (
  	# 컬럼명 / (음/양) 데이터 타입 / null포함여부 / AUTO_INCREMENT(데이터 추가 시 자동증가 i++)
    # UNSIGNED (양수) / SIGNED (음수)
    	id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  		regDate DATETIME NOT NULL,
  		title VARCHAR(100) NOT NULL, # VARCHAR(x) x개의 문자수 지정
  		body TEXT NOT NULL, # TEXT 여러문자 저장 65000 byte
    # PK 설정(특정 컬럼명)
  		PRIMARY KEY(id)
	);	
# ROW
	# row값을 넣을 table 설정
    INSERT INTO article
	# 특정 컬럼 data 작성
    SET regDate = NOW(), # regDate 컬럼에 지금시간 넣기
    	title = '제목1',
    	body = '내용1';

수정

# TABLE
	# table 이름 변경
    ALTER TABLE table_name1 RENAME table_name2;
    # primary key 추가 (대표값 지정 / 중복 금지)
	ALTER TABLE article ADD PRIMARY KEY(id);
    # colume 추가 (컬럼명 + 데이터 타입)
    ALTER TABLE article ADD COLUMN hit INT(10);
    # colume 추가 (위치) 지정
    ALTER TABLE article ADD COLUMN hit INT(10) FIRST;
	# colume 속성 변경 (unsigned:양수 + null 제외)
    ALTER TABLE article MODIFY COLUMN hit INT(10) UNSIGNED NOT NULL;
    # colume 속성 변경 (UNIQUE 속성 추가)
    ALTER TABLE article MODIFY COLUMN hit INT(10) UNSIGNED NOT NULL UNIQUE;
    # unique 속성 제거
    ALTER TABLE article DROP CONSTRAINT hit
	# colume 이름 변경
    ALTER TABLE article CHANGE COLUMN hit hitNumber INT(10) UNSIGNED NOT NULL;
	# colume 삭제
    ALTER TABLE article DROP COLUMN hit;
    # index 삭제
    ALTER TABLE article DROP INDEX `PRIMARY`;
#ROW
    # article의 title을'인기글'로 id 4부터 변경
	UPDATE article SET title = '인기글' WHERE id > 3; 

삭제

# DB
	# a1 DB 삭제
	DROP DATABASE `a1`
    # 옵션 : 존재하면
	DROP DATABASE IF EXISTS `a1`;
# TABLE
	# article TABLE 삭제
	DROP TABLE `article`;
# ROW
	# article의 row_data 삭제 
	DELETE FROM `article`;

정리

  • 제약사항 넣는 것을 추천
    • 중복 금지
    • 숫자만/음수/양수만
    • 문지만/
    • 공백 제외/

# DB
	CREATE database
    DROP database
# TABLE
	CREATE table
    DROP table
    ALTER table
# ROW_data
	SELECT colume_name FROM table_name ;
	INSERT INTO table SET colume_name = 'texts'; 
    UPDATE table SET colume_name = 'texts'; 
    DELETE TABLE `table_name`;
profile
재미있는 것들

0개의 댓글