gpt4 book ai didi

java - 如何以编程方式了解 Cassandra 中表的主键

转载 作者:行者123 更新时间:2023-12-02 02:54:12 25 4
gpt4 key购买 nike

我正在使用 Datastax 驱动程序 访问 cassandra。我的方法采用 cql 字符串参数。因为cql是任意的,所以我不知道cql字符串中表的主键

在 ResultSet 中,我没有找到与主键关联的元数据。我只能获取所有列名称

我想知道哪些列是主键。如何以编程方式获取cql中表的主键?

public Map<String, Object> search(String cql) {

SimpleStatement statement = new SimpleStatement(cql);
ResultSet result = session.execute(statement);
// ...
}

最佳答案

您可以使用TableMetadata.getPrimaryKey()方法

这是一个示例演示,用于获取键空间“test”和表ashraful_test的主键

try (Cluster cluster = Cluster.builder().addContactPoints("127.0.0.1").withCredentials("cassandra", "cassandra").build(); Session session = cluster.connect("test")) {
System.out.println(cluster.getMetadata().getKeyspace(session.getLoggedKeyspace()).getTable("ashraful_test").getPrimaryKey());
}

关于java - 如何以编程方式了解 Cassandra 中表的主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43363861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com