블로그 이미지
세피롯스

calendar

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

Notice

Tag

2014. 8. 12. 16:22 초보프로그래머만..
 문자가 들어간 데이터 검색 

SELECT * FROM 테이블 WHERE  LENGTH(TRANSLATE(TRIM(컬럼),' 1234567890',' ')) IS NOT NULL

 

 

2. 숫자만 있는 데이터 검색

SELECT * FROM 테이블 WHERE  LENGTH(TRANSLATE(TRIM(컬럼),' 1234567890',' ')) IS NULL

 

posted by 세피롯스
2014. 4. 14. 23:51 초보프로그래머만..

 

java.lang.NoSuchFieldError: PATCH
 at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:808)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
 at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
 at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
 at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
 at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:724)

 

위와같이 NoSuchFielError가 발생하면 첫번째줄 빨간색 부분을 잘 봐야한다.

에러의 원인은 spring-web.-3.1.1.jar, spring-web-3.2.6.jar 두 파일을 라이브러리에 중복으로 넣어놓으니 발생한 에러였다.

 spring-web.-3.1.1.jar를 삭제하니 해결됐다.

java.lang.NoSuchFieldError 에러면 에러 첫번째줄에 해당하는 jar가 중복이 아닌지 확인해야한다. 물론 다른이유도 있을수 있겠지만....


 

posted by 세피롯스
2014. 2. 28. 10:39 초보프로그래머만..

An internal error occurred during: "Initializing Java Tooling".
Requested array size exceeds VM limit

이클립스 실행시나 컴파일할때 위와 같은 에러가 나면 힙사이즈때문에 에러가 나기도 하지만

이클립스가 강제종료되거나 한경우에도 위와 같은 에러가 난다.

그럴땐 열려있던 프로젝트를 마우스 우클릭 > close project로 close하고

다시 열면 해결된다.

강제종료되면서 열려있던 프로젝트에 대해 문제가 생기면서 이클립스 실행시 Initializing Java Tooling 하면서 제대로 연결이 안되서(?) 에러가 나는듯한데 그럴때 close하고 다시 열면 프로젝트 연결을 다시 맺어서 에러가 나지 않는다.

 

posted by 세피롯스
2012. 7. 16. 15:30 초보프로그래머만..

디비툴을 사용하면 간단하게 찾을수있지만 불가피하게 sqlplus만 쓰는곳에서 pk명이나 index명을 찾으려고할때 쓰면 되겠다...뭐, 기본이라면 기본일수있지만 잘 모르는분들을 위해~

 select constraint_name,index_name from user_constraints
     WHERE table_name ='[테이블명]';

 

  SELECT *
FROM USER_CONS_COLUMNS
WHERE CONSTRAINT_NAME LIKE '[테이블명]%'
ORDER BY TABLE_NAME

constraint_name이 pk명

index_name이 index명이다.

테이블 스키마가 보고싶다면

desc [테이블명];

 

**************파티션 확인하고 싶을때

    select * from user_objects     
 where object_type = 'TABLE PARTITION'

posted by 세피롯스
2011. 11. 24. 10:58 초보프로그래머만..

자바소스

//연결할때
private Session session = null;
private Channel channel = null;
private ChannelSftp channelSftp = null;

JSch jsch = new JSch();

session = jsch.getSession(userName, host, port);
session.setPassword(password);
session.connect();  
channel = session.openChannel("sftp");
channel.connect();

channelSftp = (ChannelSftp) channel;
boolean result = channelSftp.isConnected();  //접속여부를 리턴한다.(true/false)

//연결 끊을때는
channelSftp.quit();
session.disconnect();

※ session.disconnect를 안하면 프로세스가 안죽는다.

posted by 세피롯스
2011. 11. 8. 11:15 초보프로그래머만..



순위메길때 사용할수 있는 오라클 함수

이런 테이블 정보가 있다고 가정하고....

T_STUDENT 테이블
(유저ID)      (학급)      (점수)
USERID    | CLASS |  POINT
----------------------------
TTT         |  A        |      90
AAA         |  A        |      80
BBB         |  B        |      100
CCC        |  A        |      10
DDD         |  B        |      40
EEE         |  B        |      60
FFF          |  A        |      20


select USERID,CLASS, POINT, RANK() OVER(PARTITION BY CLASS ORDER BY POINT DESC) RANK  FROM T_STUDENT

사용방법은 PARTITION BY CLASS를 쓰면 학급별로 순위를 만들고
ORDER BY POINT로점수의 디센딩으로 정렬해서 순위를 매긴다
당연히 PARTITION BY를 빼면 전교생의 순위가 되겠지?

결과는 이렇게 나온다.


(유저ID)      (학급)      (점수)
USERID    | CLASS |  POINT | RANK
------------------------------------
TTT         |  A        |      90   |    1
AAA         |  A        |      80   |    2
FFF          |  A        |      20   |    3
CCC        |  A        |      10    |   4
BBB         |  B        |      100  |    1
EEE         |  B        |      60    |   2
DDD         |  B        |      40    |   3



posted by 세피롯스
2011. 11. 3. 14:04 초보프로그래머만..


오라클 9i이상에서만 사용할수 있는 쿼리

데이터가 있으면 update
데이터가 없으면 insert 처리를 한번의 쿼리로 해결할수 있다.

MERGE INTO [테이블명]
USING [조건에 들어가는 테이블] 
ON [조인조건]
WHEN MATCHED THEN
UPDATE SET <==== UPDATE할 테이블명을 적어주지않는다.
[컬럼] = [값], 무조건 MERGE INTO 하는 테이블에 들어간다.
[컬럼] = [값],
   ...
WHEN NOT MATCHED THEN
INSERT (컬럼1,컬럼2,...)
VALUES(값1,값2,...)


단, 오라클 10g부터는 when not matched then 을 빼고
when matched then만
넣어줘도 된다.
하지만 9i는 반드시 matched와 not matched가 들어가야 한다.  
posted by 세피롯스
2011. 10. 27. 15:02 초보프로그래머만..



http://olis.or.kr

오픈소스를 상업적으로 사용할때 라이센스 정책이 제각각이라 찾기 힘들때 사용하면 좋겠네요~
posted by 세피롯스
2011. 4. 22. 11:24 초보프로그래머만..



오랜만에 jeus를 설치했는데 다들 아는것처럼
 http://localhost:9744/webadmin

ie로 요걸로 접속하는데 내용이 안나온다..흠
자바스크립트 에러가 나는데....
파이어폭스로 접속하니까 나오네ㅡㅡ;;;;
뭐지?? 괜히 삽질만 하루종일했네....
티맥스제품은 정말....에휴....
posted by 세피롯스
2010. 11. 3. 18:00 초보프로그래머만..


select id,group_concat(name separator ';')
from tbl_t
group by id


위처럼 id로 그룹화를 할때 해당id에 겹치는 name값을 한필드에 얻어오려면 group_concat을 쓰면된다.

예를들어....

id      |     name
----------------
1              a
1              b
1              c
2              d
2              e
3              f

요렇게 데이타가 있다면

id     name
-----------
1      a;b;c
2      d;e
3      f

요렇게 나온다....
posted by 세피롯스
prev 1 2 3 next