일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- Jenkins
- 내장객체
- 루프
- dependency
- 싱글턴
- 인텔리제이
- Scanner
- 빌드
- suvlet
- wrapper
- Java
- bootstrap
- 언박싱
- https://start.spring.io
- start.spring.io
- 무한
- maven
- 제너릭
- 메소드
- 자동형변환
- unboxing
- 콜렉션
- boxing
- 컬렉션
- 박싱
- 제네릭
- 클래스
- 싱글톤
- Short
- 스프링
- Today
- Total
목록분류 전체보기 (447)
Developer Gonie
* 만드려는 함수이름이 존재하는 테이블의 이름과 같으면 오류가 뜨는데, 이럴 땐 테이블을 삭제해주던지 함수의 이름을 다르게 지정해 주어야 한다. * 반환타입에 varchar2타입을 사용할 경우 사이즈는 지정하지 않고 'varchar2' 까지만 써줘야 한다. 1. 파라미터를 받지않는 함수 정의 및 호출방법 --test 라는 함수가 있으면 만들고 만들어놓은게 있다면 내가 만드는대로 변경해라 create or replace function test -- 'test' 부분은 함수의 이름, 함수를 만들지만 test 라는 이름을 가진 테이블이 존재하면 에러남에 주의 return number as -- return 타입이 number 라는 것, 이 부분은 declare를 대신해서 변수를 선언하는 부분이기도 함 x n..
* 변수를 선언할 때 sum, avg 등의 함수의 이름은 사용할 수 없음에 주의하자. * 반복횟수가 정해져 있을 때는 for~loop 를 사용하고, 이외의 상황은 loop 혹은 while문을 사용하면된다. 1. loop -- loop를 이용해 1~10까지 출력하는 코드 declare i number := 1; begin loop dbms_output.put_line('i: ' || i); exit when i = 10;-- 조건을 만족하면 루프를 빠져나옴 i := i + 1;-- java처럼 i++, ++i은 없음 end loop; dbms_output.put_line('loop를 빠져나옴'); end; / i: 1 i: 2 i: 3 i: 4 i: 5 i: 6 i: 7 i: 8 i: 9 i: 10 loo..
변수의 타입을 간편하게 지정하는 방법 "변수 테이블.컬럼%type" declare vid members.id%type; -- members테이블의 id 컬럼과 같은 타입으로 지정한다는 의미. vname members.name%type;-- members테이블의 name 컬럼과 같은 타입으로 지정한다는 의미. vsalary members.salary%type;-- members테이블의 salary 컬럼과 같은 타입으로 지정한다는 의미. begin select id, name, salary into vid, vname, vsalary from members where id = 3; dbms_output.put_line(vid || ' ' || vname || ' ' || vsalary); end; / 1줄의..
-- 첫번째 방법, 일반적인 구조 case(변수명) when 변수값 혹은 변수 비교 then 실행부; when 변수값 혹은 변수 비교 then 실행부; else 실행부; -- 생략가능 end case; -- 두번째 방법, 실행부에서 변수에 값을 할당하는 코드만 들어가있는 경우 활용가능한 변수 := case(변수명) when 변수값 then 할당값 -- 세미콜론 제거 when 변수값 then 할당값 -- 세미콜론 제거 else 할당값 -- 생략가능 end; -- 이땐 case 키워드를 빼준다. -- 세번째 방법, if문과 같이 수식을 이용해 구현하는 구조(Java는 case 문에서 수식을 넣는게 불가능한데 오라클은 가능) case -- 여기에서 변수를 받지 않음 when 수식 then 실행부; when 수..
declare x number := 2; result varchar2(15); begin if x = 1 then result := 'one'; elsif x = 2 then result := 'two'; elsif x = 3 then result := 'three'; else result := '그 밖의 수'; end if; dbms_output.put_line('result: ' || result); end; / result: two PL/SQL 처리가 정상적으로 완료되었습니다. declare vsabun number := '&조회할사번'; -- 조회할 사번을 입력받음 vname varchar2(12); vdeptno number; vdept varchar(20); begin select sabun,..
1-1. INSERT 쿼리문 예시 -- 변수 선언할게 없으면 declare 를 지워도 정상 작동함 begin insert into customer values(5, '웬디', '서울'); end; / PL/SQL 처리가 정상적으로 완료되었습니다. declare vno number; vname varchar2(10) := '슬기'; vaddr varchar2(10) := '부산'; begin vno := 6; insert into customer values(vno, vname, vaddr); end; / PL/SQL 처리가 정상적으로 완료되었습니다. 1-2. INSERT 쿼리문 예시, 사용자의 입력을 받아서 처리하는 것 declare vcode varchar2(10) := '&code'; -- 오른쪽의 ..
* 주의, select ~ into구문은 쿼리문의 결과가 1줄만 나오는 경우에만 사용이 가능하다. * PL/SQL 에서는 한 번에 모두를 읽어오는 기능은 없고, 한 줄 씩만 읽어오는게 가능하다. * 조회된 결과를 받아올 변수는 컬럼의 타입과 일치해야 한다. 기본예제 --바로 아래의 쿼리문의 결과에서 값을 가져오는 방법이다. select name, position, salary from company where sabun=3; NAME POSITION SALARY ------------------------ -------------------- ---------- 찬열 과장 3000 ------------------------------------------------------- declare vname..
PL(Procedural Language, 절차적 언어)/SQL이란? 오라클 DBMS에서 SQL 언어를 확장하여 사용하기 위해 만들어진 프로그래밍 언어이다. SQL 명령문만으로 처리하기에는 복잡한 자료의 저장이나 프로시저와 트리거 등을 작성하는 데 쓰인다. 각 관계형 데이터베이스마다 확장 언어들이 있는데, 이러한 확장 언어의 대표적인 예로 마이크로소프트의 마이크로소프트 SQL 서버와 SybaseASE에는 트랜잭트 SQL(Transact SQ; TSQL)이 있고 PostgreSQL에는 PL/pgSQL 마지막으로 IBM DB2는 ISO SQL의 SQL/PSM 표준을 따르는 SQL Procedural를 포함한다. PL/SQL 코드를 실행하는 위치 SQL PLUS 콘솔창, SQL DEVELOPER 둘 다 그냥 ..
자식이 부모를 참조하는 방식에 대한 추상화된 설명 1) 자식은 부모에 존재하는 것만 가질 수 있다. 2) 또한, 부모의 값은 중복이 없어야 한다. (자식의 입장에서 정확히 부모의 무슨 값을 참조하는 것인지 구분할수 없기 때문에) 1. 부모와 자식의 테이블을 CREATE 할 때 주의할 점 및 관계 설정방법 아래의 예시는 employee 테이블이 dept 테이블을 부모로 삼도록 하는 예제이다. 이 과정은 employee 테이블의 deptno 필드가 dept 테이블의 deptno 필드를 참조하여 이뤄지는데, 참조하도록 하기 위한 설정은 자식 테이블의 필드 선언에서 다음과 같이 해줌으로써 할 수 있다. "reference 부모테이블명(부모테이블의 primary key 필드명)" * 참조하려는 부모키가 prima..
1. IntelliJ에서 import 하는 방법 build.gradle을 클릭하면 필요한 라이브러리를 자동으로 다운받고, 왼쪽의 프로젝트 탐색기에 파일들이 추가되는 것을 볼 수 있다. 2. 이클립스에서 import 하는 방법 0. https://start.spring.io/ 에서 받은 압축파일을 압축 해제한 폴더가 아래 경로에 위치하고 있는 상태 C:\Users\DG\Desktop\study\hello-spring 1. workspace 선택은 내가 만든 study 폴더로 선택 C:\Users\DG\Desktop\study 2. import 하기 이후에 Finish 버튼 클릭을 하면 필요한 라이브러리를 다운받기 시작한다. 아래와 같이 파일들이 생겨나면 성공
Spring Boot 프로젝트 시작 https://start.spring.io/ 1. Maven vs Gradle 버전을 설정하고 필요한 라이브러리를 당겨오고, 얘가 빌드하는 라이프 사이클까지 관리해주는 툴이라고 한다. 과거에는 Maven을 많이 썼으나, 요즘에는 거의다 Gradle을 쓰며 이쪽으로 넘어오고 있는 추세라고 하심. 레거시 혹은 과거 프로젝트는 아직 Maven으로 남아있는게 많은데 요즘 추세는 다 Gradle로 넘어오는 추세라고 함. 영한님, 그리고 주변의 실무하시는 분들 모두 대부분 Gradle로 하신다고 한다. 2. Spring Boot 버전 snapshot 혹은 m3가 붙은 것들은 아직 정식으로 릴리즈된 버전이 아니기 때문에정식으로 릴리즈된 버전중에서 가장 좋은 버전을 선택하자. 3. ..