我有一个 mysql 表,它存储一些 sql 查询。
架构是这样的:
CREATE TABLE `queries` (`qry_id` int(11) NOT NULL AUTO_INCREMENT,
`qry_text` varchar(2000) COLLATE utf8_unicode_ci NOT NULL,
`result_table` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`last_run` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`period` int(11) DEFAULT NULL,
`error` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`qry_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
例如,一个 qry 文本是SELECT * FROM TABLE WHERE COL1 = '%s' and COL2 = '%s'
在 python 中,我从 sql 表中提取了一个名为 qry 的 str 。
qry = "SELECT * FROM TABLE WHERE COL1 = '%s' and COL2 = '%s' "
我想要的是:
qry = """SELECT * FROM TABLE WHERE COL1 = '%s' and COL2 = '%s' """ % (var1, var2)
如何人为地在 qry 周围添加三引号并将 % (var1, var2) 附加到它。我需要将 qry(以我指定的格式)传递给 API 以运行。谢谢!