Генерация команд для транзакции SQL с Tcl и sqlite - PullRequest
2 голосов
/ 12 мая 2010

У меня проблемы с пониманием того, как создать пакетную команду 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 или db1 eval , но, похоже, это не работает для меня. Возможно, я просто делаю некоторые глупые синтаксические ошибки. У кого-нибудь есть рабочий пример?

Спасибо!

1 Ответ

6 голосов
/ 12 мая 2010

Я был прав насчет "глупой ошибки".

db1 transaction {
    foreach Key [array names myArray] {
        db1 eval {SQL statement involving $Key}
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...