반응형

select box disabled 하기 선택안되게하기



네임 접근

$("select[name=네임]").attr("disabled", true);


ID접근

$("#아이디").attr("disabled", true);



다시 활성화 하고싶을시


$("#아이디").removeAttr("disabled"); 


하시면 됩니다^^

반응형
반응형
권한부여------------------
GRANT SELECT ON [TABLE NAME] TO [USER];
GRANT INSERT ON [TABLE NAME] TO [USER];
GRANT DELETE ON [TABLE NAME] TO [USER];
GRANT UPDATE ON [TABLE NAME] TO [USER];
 
-- 또는
GRANT SELECT, INSERT, DELETE, UPDATE ON [TABLE NAME] TO [USER] ;


권한부여 취소----------------------------

REVOKE SELECT ON [TABLE NAME] FROM [USER];
REVOKE INSERT ON [TABLE NAME] FROM [USER];
REVOKE DELETE ON [TABLE NAME] FROM [USER];
REVOKE UPDATE ON [TABLE NAME] FROM [USER];
 
-- 또는
REVOKE SELECT, INSERT, DELETE, UPDATE ON [TABLE NAME] FROM [USER] ;

출처 :http://hello-nanam.tistory.com/1


반응형

'프로그램 관련 > oracle' 카테고리의 다른 글

oracle INTERSECT,MINUS 사용기  (0) 2018.08.22
oracle union all 입니다  (0) 2018.08.22
oracle 과거데이터 조회하기  (0) 2018.08.10
oracle Rank, rownum. row_number  (0) 2018.08.08
oracle concat  (0) 2018.08.02
반응형

익스플로러가 안될수있습니다

        /*
        var targetObj = document.getElementById(targetId);
        var outputCss = targetObj.currentStyle;
        targetObj.style.backgroundColor = outputCss.getAttribute('background-color');
        targetObj.style.borderStyle = outputCss.getAttribute('border-style');
        targetObj.style.border = outputCss.getAttribute('border');
         */
 
        // 스타일 변경 수동 적용 가능
        var cssText = '<style type="text/css">';
        cssText += '.aaaa {font-size:11px; color:#333333; border:2px solid black; padding:10px 5px 8px 5px; background-color:#F3F5E0;}';
        cssText += '</style>';
 
        var output = document.getElementById(targetId).outerHTML;
 
        if (!SaveFileName) {
            SaveFileName = 'FilteredReport.xls';
        }
 
        var oWin = window.open("about:blank""_blank");
 
        oWin.document.write(cssText);
        oWin.document.write(output);
        oWin.document.close();
        // success = true, false
        var success = oWin.document.execCommand('SaveAs'false, SaveFileName);
        oWin.close();
 
        // **********************

        // 방법 2     

        // 방법 2   

        if (document.all.excelExportFrame == null// 프레임이 없으면 만들자~!
        {
            var excelFrame = document.createElement("iframe");
            excelFrame.id = "excelExportFrame";
            excelFrame.name = "excelExportFrame";
            excelFrame.position = "absolute";
            excelFrame.style.zIndex = -1;
            excelFrame.style.visibility = "hidden";
            excelFrame.style.top = "-10px";
            excelFrame.style.left = "-10px";
            excelFrame.style.height = "0px";
            excelFrame.style.width = "0px";
            document.body.appendChild(excelFrame); // 아이프레임을 현재 문서에 쑤셔넣고..
        }
        var frmTarget = document.all.excelExportFrame.contentWindow.document// 해당 아이프레임의 문서에 접근
 
        if (!SaveFileName) {
            SaveFileName = 'test.xls';
        }
 
        frmTarget.open("text/html""replace");
        frmTarget.write('<html>');
        frmTarget
                .write('<meta http-equiv="Content-Type" content="application/vnd.ms-excel; charset=euc-kr"/>\r\n'); // 별로..
        frmTarget.write('<body onload="saveFile();">');
        frmTarget.write(document.getElementById(targetId).outerHTML); // tag를 포함한 데이터를 쑤셔넣고
        frmTarget.write('<script language="javascript">');
        frmTarget
                .write('function saveFile(){document.execCommand("SaveAs", true, "'
                        + SaveFileName + '");}');
        frmTarget.write('<\/script>');
        frmTarget.write('</body>');
        frmTarget.write('</html>');
        frmTarget.close();
        //frmTarget.charset="UTF-8"; // 자 코드셋을 원하는걸로 맞추시고..
        frmTarget.charset = "euc-kr";
        frmTarget.focus();
 
    }
</script>





*테스트 하기
 
 
<h1>엑셀저장 테스트 </h1>
<br>
테이블만 저장 1 : <input type="button" value="excel" onclick="downloadExcel('tblMain')">
<br>
 
  <table border="1" id="tblMain" >
    <tr>
      <td rowspan="2">이름</td>
      <td>김호두</td>
      <td></td>
    </tr>
    <tr>
      <td colspan="2">김자두</td>
    </tr>
    <tr>
      <td rowspan="2">나이</td>
      <td colspan="2">20</td>
    </tr>
    <tr>
      <td>21</td>
      <td></td>
    </tr>
 
</table>
 



출처: http://cofs.tistory.com/17 [CofS]

반응형
반응형

select * FROM TABLE as of timestamp ( systimestamp - interval '30' minute)


위처럼

하면 과거 데이터 를 볼수있다


실수 데이터를 날렸을시 select inesrt하면 된다

반응형

'프로그램 관련 > oracle' 카테고리의 다른 글

oracle union all 입니다  (0) 2018.08.22
오라클 권한부여/권한취소  (0) 2018.08.14
oracle Rank, rownum. row_number  (0) 2018.08.08
oracle concat  (0) 2018.08.02
oracle GROUP BY 절과 HAVING 절  (0) 2018.07.24
반응형

게시판등의 입력폼에서 글자수를 제한하는 방법이 필요할 때가 있습니다.

input의 경우 maxlength를 사용하면 간단히 됩니다.

<input type="text" maxlength="10">

textarea에서 제한하고자 할때는 maxlength는 사용할 수 없습니다.

이때는 스크립트를 이용해야 겠죠.



jquery로 간단하게 수정해서 업데이트 합니다.


<form id="insertFrm" name="insertFrm"> 

<textarea id="test" name="test"> 

</textarea> 

</form>





<script type="text/javascript">

$(document).ready(function() {


    $('#test').on('keyup', function() {


        if($(this).val().length > 4000) {

            $(this).val($(this).val().substring(0, 4000));

        }


    });


});

</script>



출처: http://deuxism.tistory.com/12 [DEUXIGN' [émpti-spéis]]

반응형

'프로그램 관련 > jquery&jsp&HTML' 카테고리의 다른 글

select box disabled 하기 선택안되게하기  (1) 2018.08.16
table 엑셀 다운받기  (0) 2018.08.14
jquery 문자열 자르기 방식  (0) 2018.07.26
체크박스 초기화 하기  (0) 2018.07.17
jquery 팁  (0) 2018.07.17
반응형

1] Alias
   <typeAlias alias="asName" type="package.SampleClassName"/>

2] 기본 태그
    Select : <select  id="test" parameterClass="package.ClassName" resultClass="package.ClassName" >
    Insert  : <insert   id="test" parameterClass="package.ClassName"  >
    Update: <update id="test" parameterClass="package.ClassName"  >
    Delete : <delete  id="test" parameterClass="package.ClassName"  >
    Statement : <statement  id="test" parameterClass="package.ClassName"  >

3] 프로퍼티 존재여부
    존재할때 : <isPropertyAvailable property="a"></isPropertyAvailable>
    존재하지 않을때 : <isNotPropertyAvailable property="a"></isNotPropertyAvailable>

4] 프로퍼티 Null 체크
    Null 일때 : <isNull property="a"></isNull>
    Null 아닐때 : <isNotNull property="a"></isNotNull>

5] 프로퍼티 Empty 체크
    Empty 일때 : <isEmpty property="a"></isEmpty>
    Empty 아닐때 : <isNotEmpty property="a"></isNotEmpty>

6] 프로퍼티 값비교
    같을때 : <isEqual property="a" compareValue="K"></isEqual>
    같지 않을때 : <isNotEqual property="a" compareValue="K"></isNotEqual>

7] ParameterMap    
    <parameterMap id="paramMap" class="package.ClassName">
        <parameter property="id" />
        <parameter property="name" javaType="java.lang.String"  jdbcType="VARCHAR"   mode="IN"/>
        <parameter property="msg" javaType="java.lang.String"  jdbcType="VARCHAR"   mode="OUT"/>
    </parameterMap>

8] ResultMap    
    <resultMap id="reMap" class="package.ClassName">
        <result property="id" column="test_id" />
    </resultMap>
 
9] Dynamic    
    <select>
    select a from test
    <dynamic prepend="where">
        <isNotNull property="a" >id = #a#</isNotNull>
        <isNotNull property="b" prepend="AND">name = #b#</isNotNull>

        <isNotNull property="c" prepend="AND" open="(" close=")">
            <isNotNull property="c" > no = #c#</isNotNull>
            </isNotNull property="c" prepend="OR">no_as = #d#</isNotNull>
        </isNotNull>
    </dynamic>
    </select>


출처 " http://egloos.zum.com/happy2ni/v/9609765

반응형
반응형

출처 : http://entireboy.egloos.com/4433510

레코드를 특정 column의 값을 기준으로 정렬하여 순서를 매길 수 있다. RANK() OVER 또는 ROW_NUMBER() OVER를 사용하면 된다. 간단히 아래와 같은 테이블을 생각하자:

SQL> SELECT * FROM TMP_TABLE;

USERID    |     SCORE
----------|----------
aaa       |        10
aaa       |        30
aaa       |        50
aaa       |        90
bbb       |        80
bbb       |        50
bbb       |        20
bbb       |        40
aaa       |        50

9 rows selected.

score column을 기준으로 순서를 매기고 싶다. 그러면 간단하게 다음과 같이 하면 된다:

SELECT USERID, SCORE, RANK() OVER (ORDER BY SCORE DESC) RANK
FROM TMP_TABLE;

USERID    |     SCORE|      RANK
----------|----------|----------
aaa       |        90|         1
bbb       |        80|         2
aaa       |        50|         3
aaa       |        50|         3
bbb       |        50|         3
bbb       |        40|         6
aaa       |        30|         7
bbb       |        20|         8
aaa       |        10|         9

9 rows selected.

SELECT USERID, SCORE, ROW_NUMBER() OVER (ORDER BY SCORE DESC) RANK
FROM TMP_TABLE;

USERID    |     SCORE|      RANK
----------|----------|----------
aaa       |        90|         1
bbb       |        80|         2
aaa       |        50|         3
aaa       |        50|         4
bbb       |        50|         5
bbb       |        40|         6
aaa       |        30|         7
bbb       |        20|         8
aaa       |        10|         9

9 rows selected.

위의 RANK()와 ROW_NUMBER()의 차이는 결과를 자세히 보면 알 수 있다. RANK()의 결과는 3, 4, 5번째 레코드의 점수가 50점으로 동일하기 때문에 때문에 같은 순서인 3번을 매겼다. 하지만 ROW_NUMBER()의 결과는 점수가 같더라도 레코드가 달라지면 다른 순서를 매긴다.

반응형

'프로그램 관련 > oracle' 카테고리의 다른 글

oracle union all 입니다  (0) 2018.08.22
오라클 권한부여/권한취소  (0) 2018.08.14
oracle 과거데이터 조회하기  (0) 2018.08.10
oracle concat  (0) 2018.08.02
oracle GROUP BY 절과 HAVING 절  (0) 2018.07.24
반응형

오라클 CONCAT 함수는 두 문자열을 결합 할 때 사용하는 함수입니다.

오라클 연산자인 '||'과 같은 역할을 합니다. 

 두 문자열의 타입이 동일할 경우에는 문제가 없지만, 두 문자열의 타입이 다를경우에는 데이터 손실이 생길 수 있기때문에 두 문자열 타입 중 문자 결합 후 손실이 없는 쪽으로 리턴됩니다.

    • CONCAT(CLOB, NCLOB) 일 경우 NCLOB 리턴
    • CONCAT(NCLOB, NCHAR) 일 경우 NCLOB 리턴
    • CONCAT(NCLOB, CHAR) 일 경우 NCLOB 리턴
    • CONCAT(NCHAR, CLOB) 일 경우 NCLOB 리턴



출처: http://dongdongfather.tistory.com/29 [동동아빠의 두번째 삶]

반응형

'프로그램 관련 > oracle' 카테고리의 다른 글

oracle union all 입니다  (0) 2018.08.22
오라클 권한부여/권한취소  (0) 2018.08.14
oracle 과거데이터 조회하기  (0) 2018.08.10
oracle Rank, rownum. row_number  (0) 2018.08.08
oracle GROUP BY 절과 HAVING 절  (0) 2018.07.24
반응형

Javascript 문자열에서 텍스트를 제거하는 방법


 Answers

이것은 jQuery와 아무 상관이 없습니다. 다음과 같이 JavaScript replace 기능을 사용할 수 있습니다.

var str = "data-123";
str = str.replace("data-", "");

이 함수에는 정규식을 전달할 수도 있습니다. 다음 예제에서는 숫자를 제외한 모든 것을 바꿉니다.

str = str.replace(/[^0-9\.]+/g, "");
 Question

그 값으로 data-123 을 가진 문자열이 있습니다. 어떻게 jQuery 나 Javascript 를 사용하면 123 을 떠나는 동안 문자열에서 data- 를 제거 할 수 있습니까?




당신은 slice ()를 사용하여 시작부터 끝까지 charterers를 returens (포함 된 끝점)

   string.slice(start , end);

여기에 몇 가지 exmp가 어떻게 작동하는지 보여줍니다 :

var mystr = ("data-123").slice(5); // jast define start point so output is "123"
var mystr = ("data-123").slice(5,7); // define start and end  so output is "12"
var mystr=(",246").slice(1); // returens "246"

Demo




match() 및 Number() 를 사용하여 number 변수 반환 :

Number(("data-123").match(/\d+$/));

// strNum = 123

위 문장이 수행하는 작업은 다음과 같습니다. 중간 작업 :

  1. str.match(/\d+$/) - str 의 끝에있는 임의의 길이의 숫자와 일치하는 배열을 반환합니다. 이 경우 단일 문자열 항목 ['123'] 포함하는 배열을 반환합니다.
  2. Number() - 숫자 유형으로 변환합니다. .match() 에서 반환 된 배열은 단일 요소를 포함하기 때문에 Number() 는 숫자를 반환합니다.



전의:-

var value="Data-123";
var removeData=value.replace("Data-","");
alert(removeData);

바라기를 이것은 당신을 위해 작동 할 것입니다.




str.split('Yes').join('No'); 

이렇게하면 특정 문자열의 모든 항목이 원래 문자열과 바뀝니다.


출처:https://code.i-harness.com/ko/q/9eacd3


반응형

'프로그램 관련 > jquery&jsp&HTML' 카테고리의 다른 글

table 엑셀 다운받기  (0) 2018.08.14
textarea , text글자제한 두기  (0) 2018.08.10
체크박스 초기화 하기  (0) 2018.07.17
jquery 팁  (0) 2018.07.17
정규식표현 전/후방 탐색  (0) 2018.07.16
반응형

GROUP BY 절과 HAVING 절

지금까지 알아본 집계 함수의 예제는 모두 사원 전체를 기준으로 데이터를 추출했는데, 전체가 아닌 특정 그룹으로 묶어 데이터를 집계할 수도 있다. 이때 사용되는 구문이 바로 GROUP BY절이다. 그룹으로 묶을 컬럼명이나 표현식을 GROUP BY 절에 명시해서 사용하며 GROUP BY 구문은 WHERE와 ORDER BY절 사이에 위치한다.

입력

    SELECT department_id, SUM(salary)
      FROM employees
     GROUP BY department_id
     ORDER BY department_id;

결과

    DEPARTMENT_ID  SUM(SALARY)
    ------------- ------------
              10         4400
              20        19000
              30        24900
              40         6500
              50       156400
              60        28800
              70        10000
              80       304500
              90        58000
             100        51608
             110        20308
                         7000
     
    12개의 행이 선택됨.

사원 테이블에서 각 부서별 급여의 총액을 구했다. 위 결과를 보면 30번 부서에 속한 사원들의 급여를 모두 합하면 24900 임을 알 수 있다. 또 다른 쿼리를 수행해 보자.

입력

    SELECT *
      FROM kor_loan_status;

결과

    PERIOD   REGION    GUBUN               LOAN_JAN_AMT
    -------- -------- -------------------- --------------------
    201111   서울     주택담보대출          1.3E+14
    201112   서울     주택담보대출          1.3E+14
    201210   인천     주택담보대출          3.0E+13
    201211   인천     주택담보대출          3.0E+13
    201212   인천     주택담보대출          3.0E+13
    201111   광주     주택담보대출          8.7E+12
    201112   광주     주택담보대출          9.0E+12
    201210   광주     주택담보대출          9.5E+12
    ...
    238개의 행이 선택됨

kor_loan_status 테이블에는 월별, 지역별 가계대출 잔액(단위는 십억)이 들어 있고, 대출유형(gubun)은 ‘주택담보대출’과 ‘기타대출’ 두 종류만 존재한다. 그럼 2013년 지역별 가계대출 총 잔액을 구해 보자.

입력

    SELECT period, region, SUM(loan_jan_amt) totl_jan
      FROM kor_loan_status
     WHERE period LIKE '2013%'
     GROUP BY period, region
     ORDER BY period, region;

결과

    PERIOD   REGION     TOTL_JAN
    -------- ---------- -------------
    201310   강원       18190.5
    201310   경기       281475.5
    201310   경남       55814.4
    ....
     
    34개의 행이 선택됨.

이번엔 2013년 11월 총 잔액만 구해 보자.

입력

    SELECT period, region, SUM(loan_jan_amt) totl_jan
      FROM kor_loan_status
     WHERE period = '201311'
     GROUP BY region
     ORDER BY region;

결과

    SQL 오류: ORA-00979: GROUP BY 표현식이 아닙니다.

왜 오류가 발생한 것일까? 그룹 쿼리를 사용하면 SELECT 리스트에 있는 컬럼명이나 표현식 중 집계 함수를 제외하고는 모두 GROUP BY절에 명시해야 하는데, 앞의 쿼리는 period 컬럼을 명시하지 않아 오류가 난 것이다. 2013년 데이터는 2013년 10월과 11월만 존재하며 WHERE 절에서 기간을 201311로 주었으므로 굳이 period를 그룹에 포함시킬 필요는 없지만, 구문 문법상 GROUP BY 절에 포함시켜야 한다.

HAVING 절은 GROUP BY절 다음에 위치해 GROUP BY한 결과를 대상으로 다시 필터를 거는 역할을 수행한다. 즉 HAVING 필터 조건 형태로 사용한다. 예를 들어, 위 쿼리 결과에서 대출잔액이 100조 이상인 건만 추출한다면 다음과 같이 쿼리를 작성하면 된다.

입력

    SELECT period, region, SUM(loan_jan_amt) totl_jan
      FROM kor_loan_status
     WHERE period = '201311'
     GROUP BY period, region
    HAVING SUM(loan_jan_amt) > 100000
    ORDER BY region;

결과

    PERIOD  REGION     TOTL_JAN
    ------- ---------- -----------
    201311   경기      282816.4
    201311   서울      334062.7

경기도와 서울의 대출잔액이 100조 이상인 것을 보면, 대한민국에서는 수도권 인구가 타 지역에 비해 많고 집값도 높다는 점을 유추해 볼 수 있다. 주의할 점은 WHERE 절은 쿼리 전체에 대한 필터 역할을 하고, HAVING 절은 WHERE 조건을 처리한 결과에 대해 GROUP BY를 수행 후 산출된 결과에 대해 다시 조건을 걸어 데이터를 걸러낸다는 점을 잊지 말자.


출처 :https://thebook.io/006696/part01/ch05/02/

반응형

'프로그램 관련 > oracle' 카테고리의 다른 글

oracle union all 입니다  (0) 2018.08.22
오라클 권한부여/권한취소  (0) 2018.08.14
oracle 과거데이터 조회하기  (0) 2018.08.10
oracle Rank, rownum. row_number  (0) 2018.08.08
oracle concat  (0) 2018.08.02

+ Recent posts