1. mariadb 접속
2. 데이터베이스 만들기
create database java;
3. 확인
show databases;
4. java데이터베이스 사용하기
use java;
5. 테이블이 있는지 확인
show tables;
6. ID 생성해주기
CREATE USER '아이디'@'접속위치' IDENTIFIED BY '비밀번호';
접속위치 localhost %
7. 권한 주기
GRANT ALL PRIVILEGES ON 데이터베이스명.테이블명 TO '아이디'@'접속위치';
8. 반영시키기
FLUSH PRIVILEGES;
9. 접속해보기
use mysql;
select user, password from user;
10. 사용자 권한보기
show grants for 'temp01'@'%';
11. 비밀번호 변경
update user set password=password('12345') where user='temp01';
set password for temp01=password('12345');
grant usage on *.* to 'temp01'@'%' identified by '1234';
12. 권한 삭제
show
13. 사용자 삭제
delete from user where user = 'temp01';
drop user 'temp01'@'%';
데이터베이스 정의어 DDL
CREATE
ALTER
DROP
RENAME
TRUNCATE
14. 데이터베이스 삭제
DROP DATABASE 데이터베이스명;
15. 생성
테이블 생성
create table 테이블명(
컬럼명 데이터타입(값) 옵션,
컬럼명 데이터타입(값) 옵션,
컬럼명 데이터타입(값) 옵션,
컬럼명 데이터타입(값) 옵션
);
옵션에는 자동증가나 not null이 들어가요.
------------------------------------------------
물리 컬럼명 데이터타입 값
번호 no int 11
이름 name varchar 10
비번 pw varchar 20
email email varchar 30
-------------------------------------------------
create table member(
no int(11) not null auto_increment,
name varchar(10) not null,
pw varchar(20) not null,
email varchar(30) not null,
primary key(no)
);
16. 구조 출력해보기
explain 테이블명;
describe 테이블명;
17. 값 넣기
insert into 테이블명 (컬럼명, ...) values ('값'...);
insert into member (name, pw, email) values ('홍길동', '1234', 'hong@hong.com');
18. 조회하기
select 컬럼명 from 테이블명;
select * from member;
19. 수정하기
update member set name='임길동' where no=2;
update member set name='홍길수', pw='qwerty', email='hongks@hong.com' where no=1;
20. 삭제하기
delete from member where no=1;
--------------------------------------------
열 어트리뷰트
스키마 필드 필드 필드
튜플 데이터 데이터 데이터 --->행
레코드 데이터 데이터 데이터
테이블 : RDBMS에서 데이터가 저장되는 장소
테이블의 구조와 관련된 정보를 스키마 라고 합니다.
테이블의 구조는 컬럼이름/컬럼타입/컬럼길이 로 구성
레코드 : 스키마에 정의된 컬럼에 해당하는 값의 모음
하나의 테이블은 여러개의 레코드로 구성되어 있다.
주요키 : 테이블에 저장된 레코들ㄹ 사용하기 위해서 각각의 레코드를 구별하는 방법 중 하나.
주요 키는 하나의 테이블에 저장된 레코드가 서로 다른 값을 갖는 컬럼을 의미한다.
인덱스 : 데이터의 순서를 미리 정렬하기 위해 사용
레코드를 쉽게 찾을 수 있도록 미리 정리된 표를 만들어 사용 (주요 키도 인덱스 중에 하나)
DBMS : 데이터베이스를 관리해주는 시스템
데이터베이스 : 데이터를 저장하는 공간
DBMS 클라이언트 : 데이터베이스를 사용하는 어플
---------------------JAVA
/* HashSet
* HashSet은 객체들을 순서 없이 저장하고 동일한 객체는 중복 저장하지 않습니다.
* HashSet이 판단하는 동일 객체란 꼭 같은 인스턴스를 뜻하지 않습니다.
* HashSet은 객체를 저장하기 전에 객체의 hashCode()메소드를 호출해서
* 해시코드를 얻어냅니다. 그리고 이미 저장된 객체의 해시코드와 비교합니다.
* 만약 동일한 해시코드가 나온다면 equals() 메소드로 두 객체를 비교해서 true가
* 나온다면 동일한 객체로 판단하고 중복 저장을 하지 않습니다.
*
* 문자열을 HashSet에 저장하는 경우, 같은 문자열을 갖는
* String 객체는 동등한 객체로 간주되고 다른 문자열을 갖는 String 객체는
* 다른 객체로 간주되는데, 그 이유는 String 클래스가 hashCode()와 equals()메소드를
* 재정의 해서 같은 문자열의 경우 hashCode()의 리턴 값을 같게, equals()의
* 리턴 값을 참으로 나오게 하기 때문이다.
*/