26 Feb 2020
Mysql 03
Mysql 03
- CHAR : 고정길이
- VARCHAR : 가변길이
- 크기를 2칸으로 사용할 수 있음.
[테이블 생성]
CREATE TABLE [테이블](
[컬럼] [타입] [NULL OR NOT NULL] [DEFAULT] [AUTO_INCREMENT]
PRIMARY KEY([컬럼])
);
> CREATE TABLE member(
no INT NOT NULL,
email VARCHAR(50) NOT NULL,
password VARCHAR(20) NOT NULL,
name VARCHAR(25),
dept_name VARCHAR(25),
PRIMARY KEY (no)
);
- AUTO_INCREMENT : 숫자 타입일 때, 자동 증가.
[테이블 수정 (컬럼 추가)]
- ALTER : 어떠한 컬럼을 추가할 때 사용.
ALTER TABLE [테이블] ADD [컬럼] [타입] ...;
-- 나이(age) 컬럼 추가
> ALTER TABLE member ADD age INT NOT NULL;
-- 나이(age) 컬럼 삭제
> ALTER TABLE member DROP age;
[테이블명 변경]
ALTER TABLE [테이블] RENAME [변경 이름]
> ALTER TABLE member RENAME person;
> ALTER TABLE person RENAME member;
[테이블 컬럼 변경]
ALTER TABLE [테이블] CHANGE [컬럼] [변경할 컬럼] [변경할 타입]...;
> ALTER TABLE member CHANGE email mailid VARCHAR(30);
[데이터 삽입]
INSERT INTO [테이블] (컬럼1, 컬럼2, ..., 컬럼n) VALUES (컬럼1의 값, 컬럼2의 값,...., 컬럼n의 값);
-- 정상삽입
> INSERT INTO member (no, email, password, name, dept_name) VALUES (1, 'yes', '1111', 'yoon', 'develop');
-- DEFAULT 미지정(ERROR 1364 (HY000): Field 'email' doesn't have a default value)
>INSERT INTO member (no, password, name, dept_name) VALUES (2, '2222', 'gildong', 'design');
-- NULL을 허용하지 않은 경우(ERROR 1048 (23000): Column 'email' cannot be null)
>INSERT INTO member (no, email, password, name, dept_name) VALUES (3, NULL, '3333', 'gildong', 'design');
- near~ 에러 발생 시 앞 뒤 살펴보기.
[데이터 변경]
UPDATE [테이블] SET [컬럼1] = [컬럼의 값], ... WHERE [조건절]
> UPDATE member SET password = '0000' WHERE
ALTER TABLE member ADD juminbunho CHAR NOT NULL;
[데이터 삭제]
DELETE FROM [테이블] WHERE [조건절]
> DELETE FROM member WHERE no = 1;
[시험 데이터 삽입]
> INSERT INTO member (no, mailid, password, name, dept_name) VALUES (1, 'yes', '1111', 'gildong', 'develop');
> INSERT INTO member (no, mailid, password, name, dept_name) VALUES (2, 'hello', '2222', 'gilsan', 'develop');
> INSERT INTO member (no, mailid, password, name, dept_name) VALUES (3, 'world', '3333', 'hana', 'develop');
INSERT INTO member (no, mailid, password, name, dept_name) VALUES (4, 'sschwart', '4444', 'js', 'develop');
[UNION] : 중복 제거 [UNION ALL] : 중복 허용 (모두)
- 다른 테이블에 존재하는 동일한 성격의 데이터를 조회
- 연결 기준이 되는 컬럼(필드)의 이름은 동일.
- 다를 경우 AS를 통해 일치시켜주면 된다.
- 화면에 출력이 되는 컬럼명을 일치시켜라? ```sql SELECT [동일 컬럼1], [동일 컬럼2] … FROM [테이블] UNION SELECT [동일 컬럼1], [동일 컬럼2], … FROM [테이블] SELECT mailid FROM emp UNION SELECT mailid FROM member;
– 중복을 제거하지 않고 모두 조회 SELECT mailid FROM emp UNION ALL SELECT mailid FROM member; ```
JDBC
- java project 밑에 lib 폴더 추가
-
java project의 properties눌러 build path들어가서 libraries의 add library -> User Library -> User libraries -> new -> jdbc 이름으로 추가 -> add JARs -> lib 폴더에 넣어준 jar파일 추가.
- 바인딩 데이터와 연결되어 있는 형태로 자바와 연결시키기 위한 것.
Til next time,
Jeong-Yoon
at 00:00
