在cassanda的官方驱动cassandra-driver-core-2.1.3.jar之前,创建表、修改表、创建索引操作,只能通过拼CQL语句,然后通过session去执行的方式。可能会经常导致语法格式错误。
在最新版的驱动cassandra-driver-core-2.1.3.jar中,提供了一种更方便的对表的修改方式。类似于用于增删改查操作的com.datastax.driver.core.querybuilder.QueryBuilder类,它提供了一个com.datastax.driver.core.schemabuilder.SchemaBuilder类用于对表的操作。
这个类可以构建几乎所有关于对表的操作,这里举例常用的操作:
先引入jar包:
<dependency> <groupId>com.datastax.cassandra</groupId> <artifactId>cassandra-driver-core</artifactId> <version>2.1.3</version> </dependency>
然后你就可以像写cql语句一样,流畅的使用SchemaBuilder了。其中省略了session的生成,可以参考《java实现cassandra的增删改查》
//创建表 Create createTbale = SchemaBuilder.createTable("mykeyspace", "mytable") .addPartitionKey("pk1", DataType.cint()) .addColumn("col1", DataType.text()) .addColumn("col2", DataType.bigint()); session.execute(createTbale); //增加一列 SchemaStatement addColumn = SchemaBuilder.alterTable("mykeyspace", "mytable") .addColumn("col3") .type(DataType.cdouble()); session.execute(addColumn); //删除一列 SchemaStatement dropColumn = SchemaBuilder.alterTable("mykeyspace", "mytable") .dropColumn("col2"); session.execute(dropColumn); //修改一列 SchemaStatement alterColumn = SchemaBuilder.alterTable("mykeyspace", "mytable") .alterColumn("col1") .type(DataType.cdouble()); session.execute(alterColumn); //列更改名字 SchemaStatement renameColumn = SchemaBuilder.alterTable("mykeyspace", "mytable") .renameColumn("col1") .to("col4"); session.execute(alterColumn); //增肌索引 SchemaStatement createIndex = SchemaBuilder.createIndex("idx_col4") .onTable("mykeyspace", "mytable") .andColumn("col4"); session.execute(createIndex); //删除索引 Drop dropIndex = SchemaBuilder.dropIndex("mykeyspace", "idx_col4") .ifExists(); session.execute(dropIndex); //删除表 Drop dropTable = SchemaBuilder.dropTable("mykeyspace", "mytable") .ifExists(); session.execute(dropTable);
相关推荐
编程方式设置Cassandra,主要包含以下5个包,W3C认证 slf4j-api-1.7.5.jar cassandra-driver-core-2.0.2.jar guava-16.0.1.jar metrics-core-3.0.2.jar netty-3.9.0.Final.jar
xandra, 快速,简单,可靠的Cassandra驱动器 Xandra 快速,简单,可靠的Cassandra驱动器。 Xandra是一个内置的Cassandra驱动器,内置 Elixir,以速度。简单和健壮性为重点。 这个驱动程序只与Cassandra查询语言( CQL...
spring boot与cassandra集成,使用原生驱动。spring boot版本为1.4.3.RELEASE,cassandra版本为3.0.9。
spring boot与cassandra集成,使用JPA方式。
CassTcl 是 Tcl 编程语言的一个 C 扩展,实现了对 Cassandra 数据库的访问支持。 标签:CassTcl
1、cassandra的安装、维护使用 2、java操作cassandra实例 3、cql使用详解
JAVA操作cassandra数据库,包括java代码及操作cassandra数据库总结文档。
该文件时python 程序对接Cassandra数据库的驱动包,本人的使用环境时将python写的生产数据的程序生产数据,对接Cassandra数据库,对Cassandra数据库测压专用。
nosql 操作,cassandra添加删除操作代码
还在为操作cassandara数据库没有界面而烦恼吗?这个小工具就是最后的选择,必须先装jdk哦
Cassandra jdbc driver,支持Cassandra2.x,3.x, 支持标准的jdbc规范,兼容Cassandra的cql语法。无需其他jar包。
php使用cassandra用到的phpcassa-0.1
Cassandra的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对Cassandra 的一个写操作,会被复制到其他节点上去,对Cassandra的读操作,也会被路由到某个节点上面去读取。...
cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战...
Cassandra技术详解 操作与测试报告 基于nosql实现集群
一个现代、功能丰富且高度可调的 C/C++ 客户端库,适用于 Apache Cassandra 2.1+,仅使用 Cassandra 的二进制协议和 Cassandra 查询语言 v3。此驱动程序也可以与其他 DataStax 产品一起使用: 特征 异步 API 简单、...
比较全面的cassandra java driver。全面解析,通过java如何操作cassandra,新增、删除、修改、查询数据。有很详细的例子。
Cassandra的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对Cassandra 的一个写操作,会被复制到其他节点上去,对Cassandra的读操作,也会被路由到某个节点上面去读取。...
Cassandra PHP操作类,有使用实例,使用操作简单。