【发布时间】:2023-03-27 19:02:01
【问题描述】:
使用集成身份验证让在 Windows 上运行的 SBCL 应用程序连接到 SQL Server 实例阻力最小的路径是什么?
我找到了有关使用 ODBC 连接从 CL-SQL 连接到 SQL Server 的帖子,但据我所知,如果不先手动设置 DSN,就无法做到这一点。
有没有一种简单的方法可以做到这一点?
【问题讨论】:
标签: sql-server lisp odbc common-lisp sbcl
使用集成身份验证让在 Windows 上运行的 SBCL 应用程序连接到 SQL Server 实例阻力最小的路径是什么?
我找到了有关使用 ODBC 连接从 CL-SQL 连接到 SQL Server 的帖子,但据我所知,如果不先手动设置 DSN,就无法做到这一点。
有没有一种简单的方法可以做到这一点?
【问题讨论】:
标签: sql-server lisp odbc common-lisp sbcl
有一个cl-mssql 库使用 FreeTDS 与 MSSQL 服务器进行通信。根据http://www.freetds.org/userguide/domains.htm,如果您指定像“域\用户名”这样的登录名,FreeTDS 将使用集成身份验证。所以它可能适用于 cl-mssql(虽然我没有使用过)。
【讨论】:
对此(SBCL、Windows、无DSN)阻力最小的路径似乎是plain-odbc。
(asdf:load-system :plain-odbc)
(use-package :plain-odbc)
(setf conn (connect-generic :driver "{SQL Server}"
:database "dbname"
:server "servername"
:trusted_connection "yes"))
(exec-query conn "select * from some_table")
不要使用 (connect-sql-server ...),因为它需要默认的 DSN,*default-sql-server-dsn*。
也可能需要指定更好的驱动程序。
【讨论】: