✅ 1. MySQL 접속

mysql -u 사용자이름 -p

→ 비밀번호 입력 후 접속

 

OS 인증 방식(auth_socket)
→ sudo mysql  로 접속하며, 비밀번호 없이 인증됨.

✅ 2. 데이터베이스 관련 명령어

명령어설명
SHOW DATABASES; 모든 데이터베이스 목록 보기
CREATE DATABASE db이름; 새 데이터베이스 생성
DROP DATABASE db이름; 데이터베이스 삭제 (주의!)
USE db이름; 사용할 데이터베이스 선택

✅ 3. 테이블 관련 명령어

명령어설명
SHOW TABLES; 현재 DB의 테이블 목록 보기
DESCRIBE 테이블명; 테이블 구조 확인 (컬럼, 타입 등)
DROP TABLE 테이블명; 테이블 삭제 (주의!)

📋 테이블 만드는 법 (CREATE TABLE)

CREATE TABLE users (
          id INT AUTO_INCREMENT PRIMARY KEY,
          username VARCHAR(50) NOT NULL,
          email VARCHAR(100),
          created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

💡 설명

컬럼명타입설명
id INT 자동 증가하는 기본키
username VARCHAR(50) 최대 50자, NULL 불가
email VARCHAR(100) 이메일 주소
created_at TIMESTAMP 기본값으로 현재 시간 저장

🧪 데이터 삽입 / 조회 예제

-- 데이터 삽입
INSERT INTO users (username, email) VALUES ('alice', 'alice@example.com');

-- 데이터 조회
SELECT * FROM users;

-- 조건부 조회
SELECT * FROM users WHERE username = 'alice';

 

함수설명 : 날자를 함수로 입력할 때 다음처럼 사용하세요 대소문자 안가립니다

CURDATE() 현재 날짜 (형식: 'YYYY-MM-DD')
CURRENT_DATE CURDATE()의 또 다른 이름
NOW() 현재 날짜와 시간 ('YYYY-MM-DD HH:MM:SS')
CURRENT_TIMESTAMP NOW()과 동일

🛠️ ALTER TABLE 기본 구조

ALTER TABLE 테이블명 수정작업;
 

🔧 컬럼 추가 (ADD COLUMN)

ALTER TABLE users ADD COLUMN age INT;
 

👉 users 테이블에 age라는 정수형 컬럼을 추가

✏️ 컬럼 이름/타입 변경 (CHANGE COLUMN 또는 MODIFY COLUMN)

✅ 이름 + 타입 둘 다 바꾸기 (CHANGE)

ALTER TABLE users CHANGE COLUMN age user_age INT;
 

👉 age를 user_age로 이름 변경하면서, 타입도 변경 가능

⚠ CHANGE COLUMN은 기존 컬럼 이름새 컬럼 이름 모두 명시해야 함

✅ 타입만 바꾸기 (MODIFY)

ALTER TABLE users MODIFY COLUMN user_age VARCHAR(3);

👉 user_age 컬럼을 문자열로 변경 

 

❌ 컬럼 삭제 (DROP COLUMN)

ALTER TABLE users DROP COLUMN user_age;

👉 user_age 컬럼을 완전히 삭제 (되돌릴 수 없음!!)

 

🧱 기본키 또는 제약 조건 추가/삭제

기본키 추가

ALTER TABLE users ADD PRIMARY KEY (id);

UNIQUE 제약 조건 추가

ALTER TABLE users ADD UNIQUE (email);

NOT NULL 추가

ALTER TABLE users MODIFY COLUMN email VARCHAR(100) NOT NULL;

📋 전체 예제 모음

-- 1. 컬럼 추가
ALTER TABLE users ADD COLUMN phone VARCHAR(20);

-- 2. 컬럼 이름과 타입 변경
ALTER TABLE users CHANGE COLUMN phone contact_number VARCHAR(30);

-- 3. 타입만 변경
ALTER TABLE users MODIFY COLUMN contact_number TEXT;

-- 4. 컬럼 삭제
ALTER TABLE users DROP COLUMN contact_number;
 

🎯 마무리 팁

  • 세미콜론 ; 빼먹으면 명령이 끝나지 않음
  • NULL 허용 여부, DEFAULT 값 설정 → 나중에 에러 피하기 위해 중요
  • MySQL 워크벤치나 DBeaver 같이 시각적 도구도 병행하면 편리함

+ Recent posts