2017-10-31 2 views
0

私は私の質問は、私が選択して、更新クエリのWHERE句でfollowDateを使用することができますどのように、私が試してみましたがされているが、それは動作しません。次のスキーマCassandraのwhere節の日付時刻をPythonドライバを使ってクラスタとして使う方法は?

CREATE TABLE channelFollowers(
    channelID BIGINT, 
    isfavorite BOOLEAN,      
    userID BIGINT,               
    followDate TIMESTAMP, 
    PRIMARY KEY (userID, channelID, followDate) 
); 

を作成した、Pythonのドライバとカサンドラを使用しています次のエラーが発生します

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

質問を更新しました – fahad

答えて

0

です - あなたは、フォーマット文字列(%s)で5つのプレースホルダを持っているが、唯一の3つの値を渡します。私はあなたがisblocked & isfavoriteパラメータのプレースホルダを省略すると信じている - のいずれかにそれらを渡す、または真/偽値で%sを置き換える

P.S.を(私は、クエリから見ることができるように、彼らはboolean型を持っている必要があります)テーブルの定義にisblockedもありません

関連する問題