2012-07-05 62 views
0

我正在使用cassandra-jdbc對cassandra中的數據執行操作,但是當我運行這個簡單的程序時,我得到異常。使用cql從cassandar中選擇數據

這是我的代碼:

import java.sql.Connection; 
import java.sql.PreparedStatement; 
import java.sql.*; 
import javax.sql.*; 
public class Operations 
{ 
     public static void main(String[] args){ 
     try 
     { 
      Class.forName("org.apache.cassandra.cql.jdbc.CassandraDriver"); 
      Connection con =  DriverManager.getConnection("jdbc:cassandra://localhost:9160/temp"); 

      String qry = "select name FROM cql"; 

      Statement smt = con.createStatement(); 
      ResultSet resultSet = smt.executeQuery(qry); 
      System.out.println(resultSet); 
      while(resultSet.next()) 
      { 
       System.out.println(resultSet); 
      } 


     } 
     catch(Exception e) 
     { 
      System.out.println(" : "+e.getMessage()); 
     } 
      } 
} 

我得到:無法解析 '名稱' 爲十六進制字節

+0

你真的需要在問題的CREATE TABLE語句關於CQL。 – jbellis 2012-07-06 16:28:48

回答

0

嘗試:

import static org.apache.cassandra.utils.Hex.bytesToHex; 
... 

String name = bytesToHex("name".getBytes()); 
String qry = "select '" + name + "' FROM cql";