0

在连接到本地 sql server 数据库时,我可以进行查询以检索和写入数据。但是,此查询失败:

SELECT 
    *
INTO
    #tmp_table
FROM OPENROWSET
    (  
        'MSDASQL'
        ,'Driver={Microsoft Access Text Driver (*.txt, *.csv)}'
        ,'select * from csv_filePath'
    );

带有错误消息:SQL 错误 [7222] [S0255]:此实例上只允许使用 SQL Server 提供程序。

我在 Linux Mint 19.2 上使用 dbeaver。我在 Windows VM 上的 SQL Server Management Studio 上尝试了相同的命令,但得到了相同的消息。我的防火墙设置如下图所示: 防火墙配置

请帮忙。

4

1 回答 1

2

正如我在评论中提到的,Linux 上的 SQL Server 不支持除其他 SQL Server 之外的任何链接服务器。从 Linux 上 SQL Server 2017 的文档版本和支持的功能

不支持的功能和服务

以下功能和服务在 Linux 上的 SQL Server 2017 不可用。随着时间的推移,对这些功能的支持将越来越多。

Area                Unsupported feature or service
Database engine     Merge replication
                    Stretch DB
                    PolyBase
                    Distributed query with 3rd-party connections
                    Linked Servers to data sources other than SQL Server
                    System extended stored procedures (XP_CMDSHELL, etc.)
                    Filetable, FILESTREAM
                    CLR assemblies with the EXTERNAL_ACCESS or UNSAFE permission set
                    Buffer Pool Extension

请注意,它明确指出“链接服务器到 SQL Server 以外的数据源”。如果您需要链接到不同源的服务器,此时您需要在 Windows 上使用 SQL Server。

于 2020-07-13T16:50:26.397 回答