我正在尝试使用以下代码将变量字符串插入到Cassandra表中:
b64_enc = "R21haWw="
class SimpleClient:
session = None
def create_schema(self):
self.session.execute("""CREATE KEYSPACE raas WITH replication = {'class':'SimpleStrategy', 'replication_factor':3};""")
self.session.execute("""
CREATE TABLE raas.result (
userb64enc text PRIMARY KEY,
statusflag int,
statusstr text
);
""")
log.info('Simplex keyspace and schema created.')
def load_data(self):
self.session.execute("""INSERT INTO raas.result (userb64enc, statusflag, statusstr) VALUES(%s,0,'Success');""", (b64_enc))
log.info('Data loaded.')
但我得到了
TypeError: not all arguments converted during string formatting
消息。我也试过用?代替%s,但我得到了同样的错误。对这个错误的原因有什么想法?
答案 0 :(得分:3)
我回答了我自己的问题 - %s必须在引号中,因为它是文本类型。