Если, скажем, мне нужно запустить два отдельных оператора SQL для двух отдельных баз данных. Прямо сейчас я делаю (псевдокод):
Try{
declare variable connectionA to DatabaseA
declare variable connectionB to DatabaseB
connectionA.open()
connectionB.open()
declare variable SQLCmdA with ConnectionA and one SQL statement
declare variable SQLCmdB with ConnectionB and another SQL statement
SQLCmdA.executeNonQuery()
SQLCmdB.executeNonQuery()
}
Catch ()
{
print error message
}
Finally(){
connectionA.close()
connectionB.close()
SQLCmdA.Dispose()
SQLCmdB.Dispose()
}
Вышеуказанное кажется очень неуклюжим. И если у меня есть три разных оператора SQL, мне понадобятся три разные переменные SQLCmd.
Существует ли «стандартный» способ делать такие вещи, особенно с точки зрения эффективности, производительности? если кто-то может предоставить простой улучшенный псевдокод, это было бы здорово.
Кроме того, нужно ли беспокоиться о реализации пула подключений, чтобы сэкономить ресурсы и ускорить выполнение программы? Если да, то как мне реализовать это в этом случае?
Спасибо!