我会采取什么措施?在使用Emacs时,是否有任何需要注意或提示增强SQL Server特有的IDE体验?
答案 0 :(得分:33)
<强>连接强>
从Emacs连接到SQL Server数据库实例:
M-x sql-ms RET
M-x sql-mode
系统将提示您输入标准连接信息,具体如下:
对于SQL Server身份验证,请键入必要的用户和密码信息。但是,如果通过Windows身份验证进行连接,则按RETURN键同时输入用户名和密码,将其留空。
查看输出结果
请注意,要查看任何输出的文本结果在* SQL *缓冲区中,应该在某个时候调用'go'语句。有两种方法可以做到这一点。
例如,此sql语句将执行,但它不会以*当前格式显示* SQL *缓冲区中的任何结果文本:
select 'foo' as bar
但是,如果在末尾附加'go':
select 'foo' as bar
go
以下内容将显示在* SQL *缓冲区中:
bar
-----
foo
(1 row affected)
或者,如果你不想让'go'语句乱丢你的SQL脚本文本,那么随时调用'go'来查看自上次'go'语句被发送到上次以来的所有输出结果sql进程:
C-c C-s go RET
如果您需要查看最初可能未在* SQL *缓冲区中显示的任何错误消息,这将非常有用。
答案 1 :(得分:3)
首先,请查看SQL mode。
答案 2 :(得分:2)
有时显示emacs的sql-ms很糟糕,因为显示的某些列太宽而无法阅读。
这里有一些糟糕的输出体验技巧。
1
M-x toggle-truncate-lines
切换截断线可以提高一些可读性。
2
select left(columnName, 25) from table
这会将列宽缩小为25个字符。这对我来说非常适合。
来源在这里: http://bloggingmath.wordpress.com/2011/02/03/using-emacs-as-your-sql-interface/
答案 3 :(得分:1)
答案 4 :(得分:1)
作者在尝试连接SQL服务器时提到了“陷阱”。
当尝试连接到 mysql 服务器时,由于最高投票的答案建议通过M-x sql-mysql
完成,我发现我不断获得
无法找到SQL程序'mysql'
根据建议at this SO question concerning emacs, sql and Macs,我设置了以下值:
(setq sql-mysql-program "/usr/local/mysql/bin/mysql")
这是我本地 mysql 二进制文件的位置/路径。
不知道为什么在我见过的任何其他教程中都没有提到这个变量,所以我在这里发布这个,作为前面提到的“gotcha”连接到 mysql 服务器。