2023. 10. 4. 16:41ㆍJAVA
금일강의내용정리
==========================================================================
* mysql.com => Mariadb
Oracle
Mssql
JDK <- Connector -> Mysql
middlewawre(*.jar)
DDL : CREATE, DROP
DCL : INSERT, SELECT, UPDATE, DELETE
서버 : 최고관리자(root) -> 일반계정에 권한 부여
SQL : 구조적 질의어 - Structured Query Language
- ANSI SQL : 모든 데이터베이스에서 공통으로 사용 가능
데이터베이스(큰 폴더) -> 테이블(작은 폴더 : 여러 개 존재 - 실제 데이터가 저장)
큰 폴더 확인
SHOW DATABASES;
작은 폴더 확인
USE 데이버베이스이름;
SHOW TABLES;
대문자 -> 소문자
객체 = 테이블 : Member.java
ex) 쇼핑몰(데이터베이스 - 큰 폴더) - SHOP
use SHOP;
- 회원가입 : 객체(아이디, 이름...) - SHOP_Member 테이블
CREATE TABLE SHOP_Member(
userid varchar(15),
name varchar(10),
tel char(15),
jumin char(14),
age int,
date date
);
타입을 정확하게 명시했는지 확인 => DESC 테이블명;
- 상품등록 : 객체(상품이름, 가격...) - SHOP_Items 테이블
숫자 INT, 글자는 VARCHAR(저장할 글자수)
데이터베이스 K_ERP
전사적자원관리(ERP) - 데이터베이스
use 데이터베이스명;
- 사원관리 : Employees 테이블 => K_ERP_EMP 테이블
CREATE TABLE K_ERP_EMP(
id int,
name varchar(20),
salary int,
stratDate date
);
mysqldump -uroot -p 백업할데이터베이스이름 > 백업이름.확장자
mysqldump -uroot -p K_ERP > ./20231004_erp.dump
사번(int), 사원명(varchar(5), 급여(int), 입사일 datetime(date)
- 급여관리 : Salary 테이블 => K_ERP_SALARY 테이블
- 자재관리 : Stuff 테이블 => K_ERP_STUFF
데이터베이스 정의어(D Definition L)
- 생성(CREATE), 제거(DROP), ALTER(변경)
데이터베이스 조작어(D Manupulate L)
- 입력(INSERT), 검색(SELECT), 수정(UPDATE), 삭제(DELETE)
데이터베이스 제어어(D Control L) : 보안 - 계정생성
jdk <==> mysql
jdbcPrj01
- JdbcPrj01Ex.java
내컴퓨터
- 이름 또는 IP
localhost OR 127.0.01
koreait.co.kt.3306
DDL : CREATE, DROP, ALTER
DML 테이블 생성 후
INSERT, SELECT, UPDATE, DELETE
예제) 쇼핑몰
- 회원가입 테이블
- 회원번호 : INT
- 회원이름 : VARCHAR
- 전화번호 : CHAR(13)
- 포인트 : INT
- 가입일
CREATE TABLE MEMBER(
id int,
name varchar(20),
tel char(13),
point int,
regdate date
);
INSERT INTO MEMBER VALUES(101, '홍길동', '010-0000-0000', 1000, NOW());
SELECT * FROM MEMBER;
1. MYSQL 접속
2. SHOW DATABASES;
3-1. 만들어진 데이터베이스가 없다면
CREATE DATABASE 이름;
USE 데이터베이스명;
3-2. 미리 생성된 데이터베이스가 있으면
USE 데이터베이스명;
4. 테이블 이름 확인
5-1. 테이블 생성 -> 자바에서 필드명과 동일하게 작업
필드명을 만들 때
디비는 _로 단어를 연결하고
자바는 카멜 표기법으로 연결
- 제약 조건을 지정해야 한다.
- NOT NULL : 절대 값이 비면 안되는 필드
기본키는 빈 값 x + 중복된 값x
CREATE TABLE MEMBER(
email varchar(50) NOT NULL primary key,
passwd varchar(15) NOT NULL
);
5-2. 테이블이 존재한다면.....
SHOW TABLES;
DESC 테이블명; --테이블 구조 확인
6. CRUD 작업
기본키(primary key) : 빈값X, 중복된 값X(pk)
-> 유일한 나를 구분해 준다(수정, 삭제, 검색 내 것만 처리가 가능)
unique : 빈값 허용하지만 중복된 값은 X
INSERT INTO MEMBER VALUES
('mail@mail.com', '1234'),
('mail2@mail.com', '1234'),
('mail3@mail.com', '1234');
SELECT * FROM MEMBER;
SELECT COUNT(*) AS회원수 FROM MEMBER;
CREATE TABLE MEMBER(
id int not null primary key,
name varchar(50),
passwd varchar(10)
);
INSERT INTO MEMBER VALUES
(101, '홍길동', '1111'),
(102, '김철수', '2222'),
(103, '이영희', '333');
SELECT * FROM MEMBER; -- 출력
CREATE TABLE MEMBER(
id int not null auto_increment,
name varchar(10) not null,
passwd varchar(20) not null,
primary key(id)
);
INSERT INTO MEMBER VALUES(NULL, '홍길동', '1234');
INSERT INTO MEMBER VALUES(NULL, '홍길동', '1234');
INSERT INTO MEMBER VALUES(NULL, '홍길동', '1234');
DELETE FROM MEMBER; -- 전체 삭제
DELETE FROM MEMBER WHERE id = 6;
UPDATE 테이블명 SET
컬럼명1 = 값, 컬럼명2 = 값
WHERE 조건 = 값;
컬럼명 = 필드
이름, 비번, 1번
UPDATE MEMBER SET name = '서울', passwd = '7777'
WHERE id = 5;
SELECT * FROM MEMBER;
명령어 정리
입력
INSERT INTO 테이블명 VALUES(값1, 값2...)
삭제
DELETE FROM 테이블명 WHERE pk컬럼 = 값;
수정
UPDATE 테이블명 SET 수정할컬럼1 = 값, 수정할컬럼2 = 값... WHERE pk컬럼 = 값;
전체 검색
SELECT * FROM MEMBER;
조건 검색
SELECT * FROM 테이블명 WHERE pk컬럼 = 값;
예제) 회원번호, 회원이름, 비밀번호를 데이터베이스에 저장하는 JDBC 프로그램을 완성하시오.
jdbcPrh02 => JdbcPrh02Ex.java
insert.txt
0. 데이터베이스/테이블 생성 : mydb/register
1. 드라이버 등록
2. Class.forName()
3. url, id, pwd
4. INSERT
* SELECT * FROM register ORDER BY id DESC : id를 기준으로 내림차순
SELECT * FROM register ORDER BY id ASC : id를 기준으로 오름차순
==========================================================================
느낀점 : 중간에 오타때문에 속도 놓쳐서 식은땀 한바가지 흘렸는데
쉬는시간에 혼자서 차근차근 해보니까 되네?!
==========================================================================
오늘의 결론
.
.
.
.
.
.
.
언제나 현재에 집중할수 있다면 행복할것이다. -파울로 코엘료
'JAVA' 카테고리의 다른 글
추씨의자바일기18편 (0) | 2023.10.10 |
---|---|
추씨의자바일기17편 (0) | 2023.10.05 |
추씨의자바일기15편 (0) | 2023.09.27 |
추씨의자바일기14편 (0) | 2023.09.26 |
추씨의자바일기13편 (0) | 2023.09.25 |