Background Image

FORUM

조회 수 12955 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window vista 32bit
CUBRID Ver.
8.43
CUBRID TOOL Ver.
2008 R4.3 (32bit)
응용 환경(API)
jsp.. 톰캣

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

이클립스에서 웹프로젝트 생성하여 톰캣 서버와 큐브리드 DB를 연동 시켰습니다.


톰캣쪽 jsp에서 큐브리드 데이터를 불러오는 과정에서 구글링을 해도 마땅한 해답을 찾기 어려워 질문 드립니다.


컬럼이 Date 타입인 데이터의 경우에는 String 형태로 변수에 저장이 잘 되는데, 같은  데이터를 타입을 DateTime 으로 바꿔서 변수쪽으로 불러오면 String, Date, Int 모든 형태로 저장해도 항상 Null 값이 뜨는데 이유를 모르겠네요..

해당 부분 소스는 아래와 같습니다.

String preparation_date = cubrid.rs.getString("preparation_date");


"preparation_date"는 DateTime 형태의 컬럼 인덱스입니다.


초보라서 제가 기본적인 부분을 놓치고 있는 걸까요..답변 부탁드립니다..

  • ?
    이용미 2013.11.21 02:55

    안녕하세요.

    같은 데이터를 타입을 DateTime으로 바꿔서 변수로 불러오신다고 하셨는데, sql 문장 내에서 cast 연산을 쓰신 것인지요?

     

    사내에서 java(jsp도 별반 다르지 않을 것으로 예상됩니다.)를 이용하여 확인한 결과, datetime 형식의 컬럼 값을 String, Date형식을 가져오는 경우에는 모두 정상 처리가 되었습니다.

    Int 형식으로 데이터를 가져오는 경우에는 "Type conversion error"가 발생하였구요..

     

    아래와 같은 소스를 이용하여 확인하였으니 확인 부탁 드립니다.

    import java.sql.*;

    public class select_time {

       public static void main(String[] args) throws Exception {

           Connection conn = null;

           Statement stmt = null;

           ResultSet rs = null;

           try {

               Class.forName("cubrid.jdbc.driver.CUBRIDDriver");
               String url = "jdbc:cubrid:localhost:44000:demodb:::";
               String userid = "dba";
               String password = "";
               conn = DriverManager.getConnection(url, userid, password);

               //String sql = "select col1, col2 from tmp1";
               //String sql = "select col1, col2 from tmp2";
               String sql = "select col1, cast(col2 as datetime) as col2 from tmp1;";
               /*
                    create table tmp1(col1 int auto_increment, col2 date);
                    insert into tmp1(col2) values(sysdate);
                    insert into tmp1(col2) values(systimestamp);

                    create table tmp2(col1 int auto_increment, col2 datetime);
                    insert into tmp2(col2) values(sysdate);
                    insert into tmp2(col2) values(systimestamp);
               */

               stmt = conn.createStatement();
               rs = stmt.executeQuery(sql);

               while(rs.next()) {
                    int col1 = rs.getInt("col1");
                    String col2 = rs.getString("col2");
                    //Date col2 = rs.getDate("col2");
                    //int col2 = rs.getInt("col2");
                    System.out.println("The Result : " + col1 + col2);
               }

               rs.close();
               stmt.close();
               conn.close();

          } catch ( SQLException e ) {
                    System.err.println(e.getMessage());
          } catch ( Exception e ) {
                    System.err.println(e.getMessage());
          } finally {
                    if ( conn != null ) conn.close();
          }
       }
    }

  • ?
    여긴어디나는누구 2013.11.21 03:08

    큐브리드 데이터는 매니저를 사용해서만 변경 했습니다..

    당연히 데이터 타입도 매니저를 통해서 변경했구요~

    변경되지 않은 동일한 jsp소스상에서 큐브리드 매니저를 사용해 칼럼의 데이터 타입만 변경해주었다는 말이였는데 제가 너무 두서없이 적은거 같네요 ㅎㅎ;;


    요지는.. DateTime 타입의 데이터도 rs.getString() 으로 호출해서 String변수에 문제 없이 저장되는 것이군요!!

    답변 감사합니다.. 제가 다른부분에서 실수했나봐요..눈 크게 뜨고 다시 체크해 봐야겠네요!!



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 51
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3994 "DATABASE 검사" 도무지 끝날 기미가 안 보입니다 5 한종희 2011.08.02 8583
3993 "DBMS, 0, Unknown DBMS error" 요건 무슨 애러인가요?;; 2 eitetu 2011.06.02 14296
3992 "Token length is too long" 오류에 관하여 질문 드립니다. 4 file 김우람 2009.01.09 21478
3991 & 등의 특수문자등이 변환되어 저장되는 경우 1 호랑이야옹 2012.12.28 10681
3990 ' 의 입력 방식이 궁금합니다. 1 이석희 2009.04.10 13422
3989 (1개의 댓글은 작성자가 썼습니다.)비주얼 베이직 큐브리드 연동후 동시에 여러 테이블 보는 방법문의 2 secret 강남우 2012.12.21 58
3988 (Re:) 회원가입이 3명이상 안돼요... 6 딩이 2010.07.08 7595
3987 (python)centOS7 docker 연결 문의입니다. 리얼비 2021.11.01 108
3986 (댓글 질문등록 했습니다.)이전글, 다음글 기능(LAG, LEAD) ORDER BY절 FOR ORDERBY_NUM() 추가해도 그대로 입니다 3 취우다 2017.04.19 5960
3985 (함수)펑션 오류 확인부탁드립니다. 1 초코초코초 2023.02.10 102
3984 *variable* 에러 1 hwon 2013.06.14 11619
3983 ++ cubrid server start: fail 2 file 토네이도 2013.09.13 13701
3982 -74 오류 조치 방법 1 덜쇠 2013.08.07 7643
3981 .AccessViolationException (C#) 1 swift 2021.06.03 220
3980 .NET 4.5 에서의 NHibernate 문제, .NET 4.0 에서 NHibernate + TransactionScope 활용 문제. 1 websiter 2017.06.09 2057
3979 .NET DB 제어를 위한 방법. 2 우페 2008.11.23 60878
3978 .net db목록 관련 질문 드립니다. 4 파인 2021.03.05 134
3977 // 를 사용하고 싶습니다. 1 죽통군 2010.02.10 9583
3976 /etc/hosts 파일 수정 1 secret chocob 2014.10.13 13
3975 /etc/rc3.d/S98cubrid 화일 좀 바꿔주세요 1 꽁꽁단무지 2017.01.25 12246
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales