Como vocês esperam que o botão "Run" funcione em um editor SQL?

No desenvolvimento do LibreDB Studio, um dos nossos contribuidores voluntários levantou uma questão interessante sobre o comportamento de múltiplas instruções SQL quando o usuário clica em Run.

Em vez de simplesmente decidir internamente, queria ouvir quem realmente usa SQL editors no dia a dia.

Por exemplo:

CREATE TABLE test (...);INSERT INTO test VALUES (...);SELECT * FROM test;

Ao clicar em Run, o que você esperaria que acontecesse?

Algumas possibilidades:

  1. Executar todas as instruções
Run executa todo o conteúdo do editor Run Selection pode ser usado quando você quer executar apenas uma parte
  1. Executar a instrução atual
Run executa a instrução onde o cursor está Run All executa todo o conteúdo do editor
  1. A seleção tem prioridade
Sem seleção > executa a instrução atual Com seleção > executa as instruções selecionadas Run All fica disponível separadamente
  1. Outra abordagem :)

Também existem alguns casos interessantes quando há várias instruções.

Por exemplo: se eu executar as três instruções acima, vocês esperariam que elas fossem executadas dentro de uma transaction automaticamente, ou preferem que transaction handling seja sempre explícito?

Estou particularmente interessado em saber o que vocês já estão acostumados a usar em ferramentas como DBeaver, DataGrip, SSMS, pgAdmin, TablePlus, Toad, PL/SQL Developer, phpMyAdmin, etc.

Não estou procurando necessariamente qual seria a implementação "correta". Quero entender o comportamento que parece mais natural para quem usa essas ferramentas.

Se puderem compartilhar qual editor vocês usam e como o Run funciona nele, seria ainda mais útil.

A discussão original também está acontecendo no GitHub:

Source code: https://github.com/libredb/libredb-studio

Discussion: https://github.com/orgs/libredb/discussions/776

Source

1 share