22835

===

설정된 버퍼 값보다 더 큰 값을 들고오려함

  1. 읽을 바이트를 제한해서 읽기 sql SELECT DBMS_LOB.SUBSTR(lob_column, length, offset) FROM table_name; >4000 바이트보다 크다면 오프셋을 사용해 나눠서 취득할 수 밖에 없음 (PL/SQL일 경우 32767 바이트까지)

    • 멀티 바이트 문자라면 자를 때 문제가 있을 수 있기 때문에 서버단에서 처리하도록 해야함 ```java public String subStrByte(String str, int cutlen) { if(!str.isEmpty()) { str = str.trim();
          if(str.getBytes().length <= cutlen)
              return str;
      
          else {
              StringBuffer sbStr = new StringBuffer(cutlen);
              int iCnt = 0;
      
              for(char ch: str.toCharArray()) {
                  iCnt += String.valueOf(ch).getBytes().length;
      
                  if(iCnt > cutlen)
                      break;
      
                  sbStr.append(ch);
              }
              return sbStr.toString();
          }
      } else
          return "";
      

      } ```