<PL/SQL의  장점>

*절차형 언어의 사용

-IF문을 사용하여 조건에 따라 일련의 문장을 실행합니다.
-LOOP문을 사용하여 일련의 문장을 반복적으로 실행합니다.
-Explicit Cursor를 사용하여 여러 행을 검색합니다.

 

 

*에러처리


-Exception 처리 루틴을 사용하여 Oracle 서버 에러를 처리합니다.
-사용자 정의 에러를 선언하고 Exception 처리 루틴에서 처리합니다.

 

 

*이식성


-PL/SQL은 Oracle에 내장되어 있으므로 Oracle과 PL/SQL을 지원하는 어떤 호스트로도 프로그램을 옮길 수 있습니다.

 

 

*성능 향상


-PL/SQL은 응용 프로그램의 성능을 향상시킵니다.
-PL/SQL은 여러 SQL 문장을 Block으로 묶고 한번에 Block 전부를 서버로 보내기 때문에 통신량을 줄일 수 있습니다.

 

 


'오라클 > Oracle,SQL' 카테고리의 다른 글

PL/SQL 프로그램 작성요령  (0) 2016.01.08
PL/SQL의 기본 Block  (0) 2016.01.08
PL/SQL의 장점  (0) 2016.01.08
PL/SQL로 작성한 프로그램 예  (0) 2016.01.08
PL/SQL 개념  (0) 2016.01.08

<PL/SQL의 장점>

PL/SQL은 SQL에서는 사용할 수 없는 절차적 프로그래밍 기능을 가지고 있습니다. 다음은 SQL에 비교한 PL/SQL의 장점입니다.

*프로그램 개발의 모듈화


-Block내에서 논리적으로 관련된 문장들을 기술합니다.
강력한 프로그램을 작성하기 위해 Block내에 Sub Block들을 포함합니다.
 
-복잡한 프로그램을 의미있고 잘 정의된 작은 Block들로 나눕니다.

*변수선언


-변수, 상수 등을 선언하여 SQL과 절차형 언어에서 사용합니다.
-단일형(Scalar) 데이터 타입과 복합형(Composite) 데이터 타입을 선언합니다.
-테이블과 칼럼의 데이터 타입을 기반으로 하는 유동적인 변수를 선언합니다.
 

 

 

'오라클 > Oracle,SQL' 카테고리의 다른 글

PL/SQL의 기본 Block  (0) 2016.01.08
PL/SQL의 장점  (0) 2016.01.08
PL/SQL로 작성한 프로그램 예  (0) 2016.01.08
PL/SQL 개념  (0) 2016.01.08
계층구조에서 가지 제거 방법 예 2  (0) 2016.01.08

<PL/SQL로 작성한 프로그램 예>

'오라클 > Oracle,SQL' 카테고리의 다른 글

PL/SQL의 장점  (0) 2016.01.08
PL/SQL의 장점  (0) 2016.01.08
PL/SQL 개념  (0) 2016.01.08
계층구조에서 가지 제거 방법 예 2  (0) 2016.01.08
계층구조에서 가지 제거 방법 예 1  (0) 2016.01.08

<PL/SQL의 개념>

-Oracle에서 지원하는 프로그래밍 언어의 특성을 수용한 SQL의 확장


-PL/SQL Block내에서 SQL의 DML(데이터 조작어)문과

Query(검색어)문, 그리고 절차형 언어(IF, LOOP) 등을 사용하여 절차적으로 프로그래밍을 가능하게 한 강력한 트랜잭션 언어 

 

 

 

<​계층구조에서 가지 제거 방법 예 2>

*사
 
-계층적 질의문을 사용하여 부서 테이블에서 dname 칼럼을 단대, 학부, 학과순으로 top-down 형식의 계층 구조로 출력하여라.

단,  ‘정보미디어학부’와 ‘정보미디어학부’에 속한 모든 학과를 제외하고 출력하여라.

 

 

 

 

 

 

 

<계층구조에서 가지 제거 방법 예 1>

​* 사용예

- 계층적 질의문을 사용하여 부서 테이블에서 dname 칼럼을 단대,

학부, 학과순으로 top-down 형식의 계층 구조로 출력하여라. 단, 

‘정보미디어학부’를 제외하고 출력하여라.


 

 

 

 

 

 

 

 

 

 




『 단순한 파일 업로드 』

​<소스코드>

​* 컨트롤러 작성

 @Controller
@RequestMapping("/test/fileupload")
public class FileuploadController {
   
    @RequestMapping(method=RequestMethod.GET)
public void setupForm(Model model) {        
    }
   
    // 하나의 파일을 업로드함
    @RequestMapping(value="single", method=RequestMethod.POST)
    public ModelAndView doAction(@RequestParam("file") MultipartFile file) throws IllegalStateException, IOException {

if(!file.getOriginalFilename().isEmpty() && !file.isEmpty()) {
            File uploadFile = new File("d:/upload/", file.getOriginalFilename());
            //서버내의 다른 장소에 업로드함
            file.transferTo(uploadFile);            
            ModelAndView mav = new ModelAndView("/test/complete");
            mav.addObject("filename", file.getOriginalFilename());
            mav.addObject("filesize", FileUtils.byteCountToDisplaySize(file.getSize()));
            return mav;
           
        } else {
            ModelAndView mav = new ModelAndView("/test/fail");
            return mav;
        }
    }
}


 

 

 

 

 

 




『 단순한 파일 업로드 』

​<소스코드>


* JSP 작성

​form속성에 enctype="multipart/form-data“ 추가

<h4>파일 업로드</h4>
<form action="${appUrl}/test/fileupload/single.html" method="post" enctype="multipart/form-data">
   
    <input type="file" name="file" />
   
    <input type="submit"/>
</form>


 

 

 

+ Recent posts