일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- maven
- bootstrap
- 클래스
- 박싱
- boxing
- 스프링
- start.spring.io
- https://start.spring.io
- Java
- 메소드
- 루프
- suvlet
- 무한
- 언박싱
- Short
- Scanner
- dependency
- 제너릭
- 인텔리제이
- 컬렉션
- unboxing
- 자동형변환
- 콜렉션
- 싱글턴
- 내장객체
- wrapper
- Jenkins
- 빌드
- 제네릭
- 싱글톤
- Today
- Total
목록K-DigitalTraining 강의/2. Oracle + PLSQL (38)
Developer Gonie
* 이 명령어도 alter와 마찬가지로 rollback 불가. 돌아가려면 다시 재적용하는 방법밖에 없음 테이블의 이름 변경 : rename rename 테이블명 to 바꿀이름;
제약조건 6가지 - primary key : 중복되면 안되고 비어있어도 안됨 - not null : 비어있으면 안됨 - unique : 해당 필드 중복값 불가 - check : 조건에 해당하는 값만 가능 - default : 기본값 설정시 사용 - foreign key
* 모든 alter 명령은 한 번 실행하면 rollback 명령을 사용할 수 없음(자동으로 commit 까지 되므로) 1. 컬럼타입 추가 : alter table - add * default를 지정하지 않으면 컬럼은 추가하나 값은 추가하지 않으므로 값을 추가하고자 한다면 update 명령어를 사용해야한다. * default 값으로는 salary*12 등의 기존에 존재하는 컬럼을 이용한 연산을 할당할 수 없다. 값을 초기화 해주고 싶다면 컬럼 추가 후, update 로 값을 넣어주는게 낫다. alter table 테이블명 add(컬럼명 타입); -- 컬럼을 추가하며, 추가한 컬럼의 값을 전부 기본값으로 채워지게 하는 명령 alter table 테이블명 add(컬럼명 타입 default 기본값); -- 위의..
* 시퀀스는 중복되지 않는 수가 들어가야하는 필드가 있는 경우, 중복여부를 덜 신경쓰고 싶은 경우에 사용한다. 시퀀스 생성 방법 create sequence 시퀀스이름 increment by 1 -- 1씩 증가하는 수가 아니라 3씩 증가시키고 싶다면 이걸 3으로 해주면 됨 start with 1 minvalue 1 maxvalue 10; -- 11번째 레코드를 만들면서 뽑아오려고 하면 그땐 에러가 뜸. 제한을 두고 싶지않다면 maxvalue 지정해주지 않으면됨. 생성한 시퀀스 삭제 방법 drop sequence 시퀀스이름; 생성한 시퀀스를 이용하는 방법 create sequence com_seq increment by 1 start with 1 minvalue 1 maxvalue 10; create ta..
* ddl은 무조건 auto commit 이다.
1. commit : 이걸 해줘야 지금까지 했던 작업이 저장됨 2. rollback : 마지막 commit 한 상태로 되돌리는 것 - rename, alter 명령은 엔터와 동시에 commit되므로 rollback 명령어를 사용해 작업을 취소할 수 없음 insert insert insert commit -- rollback 하면 돌아오게 되는 곳 insert insert rollback -- 마지막 commit한 상태로 되돌리는 것
테이블 1개를 삭제하는 DROP 연산 drop table 테이블명; 사용자가 가지고 있는 테이블 전부를 삭제하는 DROP 연산 drop user 사용자ID cascade; 자식테이블은 그대로 두고 부모테이블만 삭제하는 DROP 연산 drop table 테이블명 cascade constraints
테이블을 제외한 모든 레코드 삭제 delete from 테이블명; -- from은 생략 가능함 delete members; 조건과 일치하는 모든 레코드 삭제 delete from 테이블명 where 조건 사용예시 -- id가 5이하인 레코드 삭제 delete from members where id = 500 and salary
* Oracle 에서 문자열을 입력할 땐 '~~~~' 이렇게 작은 따옴표로 감싸줘야 한다.(큰따옴표X) 필드의 값을 전부 변경하는 것 update 테이블명 set 필드명1 = 값1, 필드명2 = 값2,,, 조건에 해당하는 row에 한해서 필드의 값을 변경하는 것 update 테이블명 set 필드명1 = 값1, 필드명2 = 값2,,, where 조건 사용예시 --name 필드의 모든 값들을 윤아로 변경하고, salary 필드의 모든 값을 50으로 변경 update members set name = '윤아', salary=50; --모든 사람들의 salary를 50인상 update members set salary = salary + 50; --id가 3또는 5인 경우에 한해서 위의 쿼리를 실행 update..
Select select * from 테이블명; select 필드1, 필드2 from 테이블명; Select + where select * from 테이블명 where 조건; select 필드1, 필드2 from 테이블명 where 조건; Select + where + order by select * from 테이블명 where 조건 order by 필드명 -- 디폴트로 오름차순 정렬 order by 필드명 정렬방식 order by 필드명1 정렬방식1, 필드명2 정렬방식2, order by 필드명1, 필드명2,, 정렬방식; order by 컬럼번호1, 컬럼번호2,, 정렬방식; -- 잘 사용 안하는 방식 asc : 오름차순(숫자, 날짜, 문자) -- 날짜는 asc 하면 오래된 날짜부터 나옴 desc : 내..
* 중복되면 안되는 필드의 경우 insert문 사용시 시퀀스를 통해 넣어줄 수도 있다. https://ldgeao99-developer.tistory.com/200?category=1079113 INSERT 연산 * 만약 values 앞에 필드를 나열하지 않고 변경할 값들을 나열하여 insert 할 때 테이블 생성 당시 지정해둔 default 값으로 사용하고 싶다면 insert into person values(perseq.nextVal, '싸이', 20, '남', default); 와 같이 'default' 키워드를 넣어줘야한다. - insert into 테이블이름(컬럼1, 컬럼2, ,,,) values(값1, 값2,,,) - insert into 테이블이름 values(값1, 값2,,,) - 날짜는 ..
* Java에서와는 달리 데이터베이스에서는 변수명이 앞에오고 타입이 뒤에옴. * Oracle에서의 주석은 "--" 를 이용해 만들 수 있다. * Oracle은 Java와 달리 쿼리문에서 대소문자를 구분하지 않는다. 즉, 섞어서 사용해도 상관없이 인식됨. 단, 테이블에 들어있는 값은 대소문자를 구분하여 저장됨 필드 타입 CREATE 연산 - create table 테이블명(변수1 타입1, 변수2 타입2, 변수3 타입3); - primary key 는 insert 연산 수행시 해당 필드는 null 혹은 비어있으면 안되고, 중복없이 Unique 해야한다. - default로 지정해준 값은 insert 연산시 필드 값을 지정해주지 않으면 해당 필드에 자동으로 할당되는 값이다. create table member..