我在理解如何在列表中创建SQL命令批处理语句并将其传递给sqlite以便在事务中执行时遇到麻烦。

基本上,我现在要做的是:

sqlite3 db1 $dbFile
db1 eval BEGIN
foreach Key [array names myArray] {
    db1 eval {SQL statement involving $Key}
}
db1 eval COMMIT


我正在考虑一种使用SQL INSERT生成列表,然后将其传递给db1 transaction或db1 eval的方法,但这似乎对我不起作用。也许我只是在犯一些愚蠢的语法错误。有人有可行的例子吗?

谢谢!

最佳答案

我对“愚蠢的错误”是正确的。

db1 transaction {
    foreach Key [array names myArray] {
        db1 eval {SQL statement involving $Key}
    }
}

关于sqlite - 使用Tcl和sqlite生成用于SQL事务的命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2818951/

10-13 07:15