我试图在Cassandra CLI版本1.1.6中创建一个列族,我不确定如何将主键指定为MovieID。
CREATE COLUMN FAMILY movies
WITH comparator = UTF8Type
AND key_validation_class=UTF8Type
AND column_metadata = [
{column_name: movieid, validation_class: UTF8Type}
{column_name: title, validation_class: UTF8Type}
{column_name: genres, validation_class: UTF8Type}];
通过CLI创建列族不会创建必须遵守的模式。这取决于插入数据的方式,即定义主键的方式。当您通过CLi创建列族时,您只需定义主键将包含什么样的值,即它是字符串(UTF8Type)、int(IntegerType)等。
此外,实际上不能通过CLI为键列(也就是表中的主键)指定别名。为此必须使用CQL。如果您想要定义模式和结构化查询,而不是使用宽行,那么应该针对较新版本的cassandra(为什么现在是1.2.x?)并使用CLQ3。
通过description table命令从cqlsh查看时,您的cassandra-cli语句将创建以下内容:
CREATE TABLE movies (
KEY text PRIMARY KEY, <------- pk
genres text,
title text,
movieid text
) WITH // and a bunch of cf options
但这并不意味着不能插入另一个没有定义的列,因为thrift并不真正关心CF的模式。
jOOQ具有文档中所述的CREATE TABLE语法: 我想知道如何定义哪个列属于主键?那么,在jOOQ中有没有办法用主键信息创建create TABLE语句呢? 我对SQLite的解决方案特别感兴趣,它没有语法来添加主键,所以我认为在最坏的情况下,我必须去一个特定于数据库的解决方案?
我正在使用JOOQ(JOOQ中的新手)在spring boot项目中使用Rest API在运行时创建数据库。在其中一种情况下,我需要创建一个具有复合主键的表,该主键可以是多个列的组合。我使用下面的代码创建约束- 我已经有
你不知道如何在JOOQ(Java)中创建主键吗?我需要的只是得到正确的创建表字符串。我还没有这段代码(使用SQLDialect。MYSQL): 输出(来自字符串生成器): 我需要的是设置主键以获得正确的输出: 不使用execute()是否可能?因为我只需要它作为字符串,所以我想再次使用only getSQL()命令。。。 我发现了类似这样的东西:DSL。主密钥(“id”); 但我无法将它与rest
问题内容: 我已经使用下面给出的建议更新了代码,该建议已经过测试并且效果很好,可以为将来的用户提供快速参考。 我使用下面的代码来创建链接表,而不必为每个用户设置DSN,我如何指定主键,因为系统会询问您是否手动连接: 注意:上面是针对SQL Server VIEW的,对于SQL Server TABLE而言是相同的,但是您不需要该行(如果在服务器上正确设置了主键)。 该代码代替了链接表并手动指定主键
问题内容: 我正在尝试根据创建记录的日期为每个记录创建唯一的ID。例如,如果今天创建记录,我希望键为20101130XX,其中XX是数字的顺序列表,例如01、02、03等…以防今天有多个人创建记录。 如果昨天有3个人创建了记录,则其唯一ID为 2011032700 2011032701 2011032702 然后午夜到了,有人创建了一个新记录 2011032800 这样做的目的是给每个记录一个唯一
问题内容: 我想用Pandas的to_sql函数创建一个具有主键的MySQL表(在mysql表中具有主键通常是一种好习惯),如下所示: 但这会创建一个没有任何主键(甚至没有任何索引)的表。 该文档提到了参数“ index_label”,该参数与“ index”参数结合可用于创建索引,但未提及主键的任何选项。 文献资料 问题答案: 免责声明:这个答案是实验性的,而不是实用的,但也许值得一提。 我发现