데이터베이스 존재하는 테이블, 컬럼, 프로시져 조회

1. 테이블 조회
select *
   from systables

2. 컬럼 조회
select *
  from syscolumns

3. 프로시져 조회 (예제)
select t1.procname
  from sysprocedures t1
      ,sysprocbody t2
 where t1.procid = t2.procid
   and t1.owner = 'ngsdba'
   and t1.procname like 'sp_%'
   and lower(t2.data) like '%wc_folio%'
 group by t1.procname

=> 소유 계정이 ngsdba 인 프로시져에 대하여
    앞 글자가 sp_ 로 시작하는 프로시져 중,
    내용에 wc_folio 가 키워드로 들어가는 프로시져를
    검색한다.

* 그 외의 시퀀스, 뷰, 시노님 등을 조회하려면 systables 을 확인하도록 한다.

divide by zero 오류 발생시 대처법 Informix

기본적으로 어떠한 Database를 사용하여도 이 오류는 발생할 것이다.

Ex) select 100 / 0 from dual => divide by zero error

말 그대로 0으로 나눌수 없기 때문에 발생하는 오류이다.

대처방법) select 100 / decode(#숫자#,0,'',#숫자#) from dual => 숫자 or null

위와 같이 decode 처리하면 0 값이 들어온경우 '' (공백) 으로 나눠지므로,

오류는 발생하지 않는다. (공백으로 나누게 되며 결과값은 0이 아닌 null)


* 가변적인 데이터로 나눌경우 미리 위와같이 코딩을 하여 시간을 낭비하지 말자!
(Test DB Version : IBM Informix Dynamic Server Version 11.50.FC7)


POST 및 GET 방식으로 넘어온 파라미터 처리하기 JSP & JavaScript

- 개요
POST 및 GET 방식을 이용하여 파라미터를 새로운 팝업창이나 다른 페이지로 넘길 경우,
파라미터를 받은 화면에서 파라미터를 처리하는 방법

- 사용예제
<%
//JSP 안의 JAVA 코딩시 아래와 같이 파라미터를 get 한다.
String test = request.getParameter("param1");
%>

//JSP 안의 JAVA 에서 선언한 변수를 아래와 같이 자바스크립트에서 사용할수 있다.
var test_param1 = '<%=test%>';

POST 방식의 이해 JSP & JavaScript

- 개요
요청 메시지 본문에 데이터를 포함시켜서 전달하는 방식

- 문제점
1. 용량의 제한은 없으나 timeout 이 발생할수 있다. (요청시간 만료시 발생하는 오류)

- 사용예제
var form = document.testForm;

window.open("", "popup1", "속성"); //popup1 이란 이름을 가진 팝업 호출 (오픈할 페이지는 아래에서 셋팅)

form.action = "./testPopup.jsp"; //POST 방식으로 데이터를 보낼 페이지
form.target = "popup1"; //타겟을 위에서 호출한 팝업으로 지정한다.
form.submit(); //서브밋하면 POST 방식으로 파라미터가 넘어가게 된다.

- 폼 정의 예제
<form name="testForm" method="post">
    <input type="hidden" name="param1" value="바보">
    <input type="hidden" name="param2" value="멍게">
    <input type="hidden" name="param3" value="해삼">
</form>

* 개발시 get 방식보다는 post 방식 사용을 권장


GET 방식의 이해 JSP & JavaScript

- 개요
Url에 데이터를 직접 포함시켜서 전달하는 방식

- 문제점
1. 웹브라우져에 따라 다를수도 있지만 용량의 제한이 있다.
2. 주소창에 데이터가 그대로 노출되므로 보안상의 문제가 발생할수 있다.

- 사용예제
/-
* 아래와 같이 url에 파라미터를 직접 입력하는 형식
* (파일명 이후의 첫 구분자 : ?, 이후로는 & 을 구분자로 사용)
*-
window.open("test.jsp?param1=value1&param2=value2&param3=value3&...", "팝업이름", "속성");


1 2