在Ubuntu 11.10上使用emacs。我想使用sqsh而不是isql連接到SQL Server數據庫。我將下列內容添加到我的啓動中。用emacs替換isql與sqsh(Ubuntu)
(set 'sql-sybase-program "sqsh")
(set 'sql-ms-program "sqsh")
它重新編譯並加載成功。但是,當我使用sql-ms並嘗試連接到數據庫時,由於emacs在使用大寫命令參數時使用的是小寫命令參數,所以出現錯誤。此外,我可以使用命令行中的sqsh成功連接到數據庫服務器。當我嘗試的Emacs內運行的東西,我得到以下錯誤:
sqsh: -d: Invalid integer expression
Process SQL exited abnormally with code 255
我做了一個相當廣泛的谷歌搜索,我無法找到如何做到這一點很多(這讓我覺得這可能不是可能)。顯然,我可以在shell中運行sqsh,但是之後我失去了SQL模式集成。我不確定我可以/需要對我的init.el文件做些什麼來實現這一點。
我想我真的需要做的就是弄清楚如何讓emacs發送-D而不是-d到sqsh。很顯然,isql並不在意,但sqsh深深地關注這個差異。
我應該嘗試,一個我自己。我甚至將我的init.el設置爲使用sqsh,儘管我懷疑我會連接到Sybase數據庫(我們使用SQL Server和Postgres)。 – Choens 2012-02-03 18:56:51
我打算再等一天左右,但沒有人提出更好的解決方案,我將接受這個解決方案,只是因爲它在我的系統上工作而沒有任何額外的努力。也許我應該進去看看sql-mode的lisp(不是我是一個很好的lisp黑客)。 – Choens 2012-02-03 18:58:06
哇。更新後的想法稍微複雜一點,但完美地工作。 – Choens 2012-02-06 12:39:01