Dong Li created KYLIN-1817:
------------------------------

             Summary: No result from JDBC with Date filter in prepareStatement
                 Key: KYLIN-1817
                 URL: https://issues.apache.org/jira/browse/KYLIN-1817
             Project: Kylin
          Issue Type: Bug
          Components: Driver - JDBC
            Reporter: Dong Li
            Priority: Minor


>From Qiu Tongxin:
大家好:
     用kylin的JDBC查询,查询条件是date类型的,但是查询不出数据,以下是代码:
             driver = (Driver) 
Class.forName("org.apache.kylin.jdbc.Driver").newInstance();
   
            Properties info = new Properties();
            info.put("user", "ADMIN");
            info.put("password", "KYLIN");
           
            conn = driver.connect("jdbc:kylin://IP:7070/learn_kylin", info);  
(此处IP代替了真实IP地址)
            state = conn.prepareStatement("select * from KYLIN_SALES where 
part_dt = ?");
               
            SimpleDateFormat simpleTime = new SimpleDateFormat("yyyy-MM-dd");
            java.util.Date passUtilDate = simpleTime.parse("2013-01-01"); 
            java.sql.Date passSqlDate = new 
java.sql.Date(passUtilDate.getTime()); 
       
            System.out.println("passSqlDate-------->"+passSqlDate);
           
            state.setDate(1, passSqlDate);
           
            resultSet = state.executeQuery();
 
 
控制台日志为:
  passSqlDate-------->2013-01-01
2016-06-23 14:19:52,591 DEBUG [main] jdbc.KylinClient:341 : Post body:
{"sql":"select * from KYLIN_SALES where part_dt = 
?","project":"learn_kylin","acceptPartial":false,"params":[{"className":"java.lang.Integer","value":"15706"}]}
2016-06-23 14:19:52,592 DEBUG [main] wire.content:84 : << 
"{"userDetails":{"password":null,"username":"ADMIN","authorities":[{"authority":"ROLE_ADMIN"},{"authority":"ROLE_ANALYST"},{"authority":"ROLE_MODELER"}],"accountNonExpired":true,"accountNonLocked":true,"credentialsNonExpired":true,"enabled":true}}"
 
为什么kylin把传进的参数转为了"params":[{"className":"java.lang.Integer","value":"15706"}]???


>From Bhanu Mohanty:
Issues with Kylin PreparedStatement 

Data Type : Date 

// From Date 
 PreparedStatement.setDate(1, java.sql.Date.valueOf("2016-01-01"));

// To Date 

 PreparedStatement.setDate(2, java.sql.Date.valueOf("2016-06-01"));

Kylin Debug Statement - Post body: 

{"sql":"************","project":"*******","acceptPartial":false,"params":[{"className":"java.lang.Integer","value":"16801"},{"className":"java.lang.Integer","value":"16953"}]}

No data is returned. 

If I pass the date part of the Query String , then it returns data. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to