The keyspace and 'person' table are exist
您好,我是Cassandra的新手,所以我只是尝试从我的java代码执行select查询,但我得到一个例外,表不存在(但它存在。检查上面的链接)。 请帮我弄清楚这个问题可能是什么原因。 提前谢谢。
public class DS_Cassandra implements DS
{
Cluster cluster;
Session session;
private static final Logger log = Logger.getLogger( DS_Cassandra.class.getName() );
public DS_Cassandra()
{
cluster = Cluster.builder().addContactPoint("127.0.0.1").build();
session = cluster.connect("testing");
}
@Override
public ArrayList<Person> read()
{
ArrayList<Person> list = new ArrayList<Person>();
ResultSet results = session.execute("SELECT * FROM person"); //and here exception happened
2016-03-02 22:06:26 INFO NettyUtil:83 - Did not find Netty's native epoll transport in the classpath, defaulting to NIO.
2016-03-02 22:06:26 INFO DCAwareRoundRobinPolicy:95 - Using data-center name 'datacenter1' for DCAwareRoundRobinPolicy (if this is incorrect, please provide the correct datacenter name with DCAwareRoundRobinPolicy constructor)
2016-03-02 22:06:26 INFO Cluster:1475 - New Cassandra host /127.0.0.1:9042 added
Exception in thread "main" com.datastax.driver.core.exceptions.InvalidQueryException: unconfigured table person
at com.datastax.driver.core.exceptions.InvalidQueryException.copy(InvalidQueryException.java:50)
at com.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:37)
at com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:245)
at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:63)
at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:39)...
答案 0 :(得分:4)
表名称区分大小写。
答案 1 :(得分:0)
尝试将您的键空间名称与表名称相加。
对于您的情况:“ SELECT * FROM my_keyspace_name.person”