我正在使用python驱动程序和Cassandra,我创建了以下架构
CREATE TABLE channelFollowers(
channelID BIGINT,
isfavorite BOOLEAN,
userID BIGINT,
followDate TIMESTAMP,
PRIMARY KEY (userID, channelID, followDate)
);
我的问题是,如何在select和update查询的where子句中使用followDate
,我试过但是它不起作用它会产生以下错误
typeerror: not enough arguments for format string
任何人都可以帮助我吗?
这是我的代码
channelLike = channelSession.execute("update channelfollowers set isblocked=%s, isfavorite=%s where userid=%s and channelid=%s and followdate=%s",[int(userid),int(channel_id),followDate]
答案 0 :(得分:0)
从我在错误消息中看到的&在您的代码中 - 您在格式字符串(%s
)中有5个占位符,但只传递3个值。我相信你省略isblocked
&的占位符isfavorite
参数 - 要么传递它们,要么将%s
替换为true / false值(正如我从查询中看到的那样,它们应该具有布尔类型)
P.S。你在表的定义中也没有isblocked