Comment se connecter à SQL Server avec Emacs?
-
08-07-2019 - |
Question
Que dois-je faire? Avez-vous des idées ou des astuces pour améliorer l'expérience de l'EDI spécifique à SQL Server lors de l'utilisation d'Emacs?
La solution
Connexion
Pour vous connecter à une instance de base de données SQL Server à partir d'Emacs:
M-x sql-ms RET
M-x sql-mode
Vous serez invité à fournir les informations de connexion standard, notamment les suivantes:
- utilisateur
- mot de passe
- serveur
- Base de données
Pour l'authentification SQL Server, entrez les informations nécessaires sur l'utilisateur et le mot de passe. Toutefois, si vous vous connectez via l’authentification Windows, appuyez sur RETOUR pour l’utilisateur et le mot de passe en les laissant vides.
Affichage des résultats de sortie
Notez que pour afficher le texte des résultats de sortie dans le tampon * SQL *, l'instruction 'go' doit être appelée à un moment donné. Quelques façons de le faire.
Par exemple, cette instruction SQL sera exécutée mais ne montrera aucun texte de résultat dans le tampon * SQL * dans son format actuel:
select 'foo' as bar
Cependant, si un 'go' est ajouté à la fin:
select 'foo' as bar
go
les informations suivantes seront affichées dans la mémoire tampon * SQL *:
bar
-----
foo
(1 row affected)
Sinon, si vous ne souhaitez pas que des instructions "go" jonchent le texte de votre script SQL, appelez "go" à la volée pour afficher tous les résultats générés depuis le dernier envoi de la précédente instruction "go". le processus SQL:
C-c C-s go RET
Ceci est utile si vous devez afficher les messages d'erreur qui pourraient ne pas s'afficher initialement dans le tampon * SQL *.
Autres conseils
Pour commencer, consultez le mode SQL .
parfois, l'affichage de sql-ms d'emacs est nul car certaines colonnes affichées sont trop larges pour être lues.
voici quelques compétences pour une mauvaise expérience de sortie.
1.
M-x toggle-truncate-lines
bascule les lignes tronquées peut améliorer certaines lignes de lecture.
2.
select left(columnName, 25) from table
cela tronque la largeur de la colonne à 25 caractères. Cela fonctionne parfaitement pour moi.
la source est ici: http://bloggingmath.wordpress.com/ 2011/02/03 / using-emacs-as-your-sql-interface /
Voir aussi ici:
https://github.com/kiwanami/emacs-edbi
De cette façon, je viens d'utiliser odbc pour me connecter à tout via DBD :: ODBC.
L'auteur mentionne " gotchas " lorsque vous essayez de vous connecter à un serveur SQL.
Lors de la tentative de connexion à un serveur mysql , comme le suggère la réponse la plus votée par l'intermédiaire de Mx sql-mysql
, j'ai constaté que je recevais continuellement
Impossible de localiser le programme SQL 'mysql'
À la suite de la suggestion à cette question SO relative à emacs, SQL et Mac , je définissez la valeur suivante:
(setq sql-mysql-program "/ usr / local / mysql / bin / mysql")
qui était l'emplacement / chemin de mon binaire mysql local.
Je ne sais pas pourquoi cette variable n'est mentionnée dans aucun autre tutoriel que j'ai vu, c'est pourquoi je poste ceci ici, en tant que "gotcha" susmentionné. lors de la connexion à un serveur mysql .