Les développeurs SQL créent-ils des requêtes SQL à l'aide de concepteurs de requêtes SQL?

13

J'étais simplement curieux de savoir si les développeurs SQL écrivaient leur code à main levée ou utilisaient-ils le concepteur de requêtes visuelles pour générer des requêtes? Dans la majorité des cas, le concepteur de requêtes peut créer la plupart des requêtes non complexes, non? (Je suis un développeur WinForms pour commencer avec SQL Server)

James
la source
4
J'utilise un concepteur de requêtes visuelles, ça s'appelle emacs. Parfois, je le ferai à main levée dans vi.
dietbuddha

Réponses:

29

Je ne peux parler au nom de personne d'autre, mais je tape habituellement SQL à main levée, comme vous dites. La plupart des concepteurs de requêtes visuelles semblent (pour moi) augmenter la complexité plutôt que de la réduire. Je dois ajouter que je n'écris pas non plus en SQL à temps plein.

Jerry Coffin
la source
1
Je suis d'accord, même si je remixe généralement les requêtes SQL que je trouve sur le Net. Les concepteurs de requêtes visuelles supposent en quelque sorte que vous connaissez le langage de requête.
Dan Rosenstark
4
+1 pour "... semble (pour moi) augmenter la complexité plutôt que de la réduire"
ozz
même ici (bien que j'utilise principalement Oracle, pas MS SQL). Le SQL généré a tendance à être lent, trop complexe.
jwenting
10

Je suis sûr que cela dépend, mais je n'utilise jamais de concepteurs visuels. Une fois que vous avez une bonne idée de SQL et que vous pensez en SQL, l'écriture devient une seconde nature. J'aurais beaucoup plus de frustration à utiliser n'importe quel concepteur visuel que de simplement écrire du SQL brut.

Bunglestink
la source
5

Je dirais que la grande majorité des développeurs raisonnablement expérimentés l'écrivent à la main. Je suis sûr que certains nouveaux diplômés ou des diplômés récents pourraient utiliser les concepteurs visuels, mais une fois que vous avez certaines des bases de l'écriture SQL apprise à la main, c'est beaucoup plus rapide.

Craig
la source
5

Je trouve que les concepteurs de requêtes sont généralement lents et encombrants et ne peuvent pas toujours gérer les requêtes complexes. Plusieurs fois, j'ai dû copier / coller une requête dans un outil (généralement Access / Excel) qui passe ensuite quelques minutes à parcourir une requête avant de déclarer qu'il ne peut tout simplement pas la gérer et qu'il m'envoie à la modification de texte mode.

FrustratedWithFormsDesigner
la source
3

Chaque fois que je veux apprendre un nouvel outil / langage. Je me force à taper à la main. HTML, XAML, SQL. De cette façon, je sais comment réparer ce que le concepteur vomit. Une fois que je suis bon en écriture à la main, je me force à apprendre le mieux possible le designer.

Être bon avec les deux, nous vous offrons le meilleur des deux mondes ... il y a des choses qui seront plus efficaces à faire avec un designer et d'autres qui sont plus efficaces en code. S'enseigner soi-même vous permet d'éviter les défauts de l'un ou de l'autre.

Michael Brown
la source
3

Je n'utilise pas de génération de requêtes pour générer mes requêtes, je les crée à la main au départ (principalement parce que tout sauf le mot trivial des requêtes est difficile à écrire dans un fichier query designer.

Mais sur les grands systèmes, cela ne suffit pas. La plupart des systèmes de base de données lourds fournissent un outil d'analyse de requête qui prendra une requête et vous montrera le Query Execution Plan. Vous pouvez ensuite l'utiliser (avec d'autres outils) pour essayer d'optimiser la requête.

Non seulement vous aidez avec la requête elle-même, mais vous donne également une indication des tables qui doivent être indexées et de la façon dont elles doivent être indexées, mais également des techniques potentielles de partitionnement des données.

Martin York
la source
3

J'irais jusqu'à dire que je n'ai jamais vu personne utiliser le concepteur de requêtes visuelles.

Je ne l'ai jamais utilisé moi-même.

ozz
la source
2

Lorsque je ne connais pas très bien le schéma, j'ai tendance à utiliser un concepteur de requêtes. Cela m'aide à apprendre le schéma. Plus tard ... la frappe est beaucoup plus rapide que le dessin.

liori
la source
1

Je n'envisagerais jamais d'utiliser le concepteur pour écrire mes requêtes. Je connais mes schémas de base de données dans les moindres détails (et nos bases de données ont des centaines de tables) et je n'ai pas à penser à la façon de les rejoindre, je tape simplement et les requêtes se déploient.

HLGEM
la source
0

J'écris toutes mes requêtes à la main. Les concepteurs visuels ne vous ralentiraient que lors de la numérisation de centaines de tableaux pour vous les présenter agréablement. Une simple saisie de nom pour les noms de colonnes et de tables ainsi qu'un manuel de référence pour votre base de données particulière est tout ce dont vous avez besoin pour travailler.

Notez que mon expérience avec les concepteurs de requêtes visuelles se limite aux outils travaillant avec la base de données Oracle.

mulandre
la source
0

J'ai écrit beaucoup de code SQL et PL / SQL sans jamais utiliser de concepteur de requêtes. Pour quelqu'un qui connaît SQL, l'utilisation de ces outils n'est que compliquée. Ce serait comme dessiner des organigrammes dans visio et laisser un outil générer le programme au lieu d'écrire réellement un programme.

user281377
la source
0

Les débutants commencent par le concepteur et trop souvent leurs premiers aperçus de code SQL y ont été générés. Cela semble trop confus car il n'est pas formaté de manière structurée / compréhensible. Finalement, vous devrez passer au codage dans le texte et vous devrez tout redresser. Le formatage est désactivé. Intellisense a fait son chemin vers les écrivains SQL. Je commence à essayer l'un d'entre eux depuis que je travaille avec une nouvelle base de données.

JeffO
la source
Je trouve qu'Intellisense me ralentit, alors je l'ai désactivé.
HLGEM
0

J'ai écrit des milliers de lignes d'Oracle SQL et PL / SQL au cours de la dernière année. La plupart du temps, je lance simplement SqlPlus dans une fenêtre shell Emacs. J'ai personnalisé l'achèvement des mots qui le rend très efficace. Un concepteur de requêtes me ralentirait. Si je dois regarder un grand ensemble de résultats, j'ouvrirai SqlDeveloper, mais j'essaie de ne pas le faire car il est lent, et même s'il peut compléter des noms en fonction du schéma, il est toujours plus rapide de travailler dans Emacs.

Kevin Cline
la source