Para um cenário de fogo e esquecimento, você pode gerar um novo encadeamento e nunca bloquear o encadeamento principal esperando que ele seja concluído:
new Thread(() => {
// use ADO.NET to do the database query
}).Start();
new Thread(() => {
// use ADO.NET to do the database query
}).Start();
Como posso transformar linhas em dados baseados em colunas repetidas?
Processo completo para copiar tabela de um banco de dados para outro (Export-Import) no SQL Server
Definir um perfil público padrão para Database Mail (SSMS)
Desabilite uma linha específica no JTable usando dados do banco de dados