我正在使用Cassandra Datastax驱动程序执行删除查询,它对数据库没有影响。当我通过cqlsh运行完全相同的查询时,它工作正常。
DEL_QUERY = "DELETE FROM x.user_data WHERE username='{0}' AND usertype = 17;".format(NEW_ID)
logger.debug("Query:\n %r", DEL_QUERY)
cluster = Cluster([CASSANDRA_HOST], port=CASSANDRA_PORT, cql_version=CASSANDRA_CQL_VERSION, auth_provider=CASSANDRA_AUTH_PROVIDER, protocol_version=3)
session = cluster.connect(CASSANDRA_KEYSPACE)
logger.debug("Executing Query:\n" + DEL_QUERY)
if not test_run:
session.execute(DEL_QUERY)
logger.debug("Query Executed.")
cluster.shutdown()
终端中以下代码的结果:
2017-03-27 18:30:10,588 - del - Executing Query:
"DELETE FROM x.user_data WHERE username='9999999999' AND usertype = 17"
2017-03-27 18:30:10,630 - del - Query Executed.
我格式化查询字符串的方式有什么问题吗?
(我现在已经在try / except中包装了查询,并且它不会打印异常消息)
答案 0 :(得分:0)
看起来你有"格式化问题"查询。