使用命名管道的 SQL Server 连接

问题描述 投票:0回答:3

我正在尝试使用 vb.net 通过命名管道从我的 Windows 应用程序连接到 SQL Server 2008。

我进行了一些浏览,发现要通过命名管道进行连接,我们只需提及“Initial Catalog = Test_DB; Data Source = np:Server_Name;integrated security=SSPI;”。

但这根本无法连接到服务器。这是使用命名管道连接到 sql serverver 的正确方法吗?

sql vb.net sql-server-2008
3个回答
0
投票

连接失败时出现什么错误消息?

我发现当我安装 SQL Server 2008 Express 时,命名管道默认被禁用。 尝试打开 SQL Server 配置管理器。现在在左侧窗格中打开“SQL Server 网络配置”,然后单击“Protocaols for SQLEXPRESS”。在右侧窗格中检查命名管道是否已启用。重新启动 SQL Server 以使更改生效。


0
投票

我必须尝试从我的 WPF 应用程序使用命名管道连接到 LocalDB(ARM64 不支持使用实例名称连接到 LocalDB),这对我有用:

Server=np:\\.\pipe\LOCALDB#<pipeid>\tsql\query;Database=MyDb

上面将连接到默认实例中名为

MyDb
的数据库,即
MSSQLLocalDB

如果您想通过指定MDF文件连接数据库,也可以类似操作。只需将

MyDb
替换为 MDF 文件的路径,如下所示:

Server=np:\\.\pipe\LOCALDB#<pipeid>\tsql\query;Database=C:\Path\To\MyDb.MDF

不用担心路径中是否有空间;你不需要逃离空间。

要获取默认实例的命名管道名称

MSSQLLocalDB
,请运行此命令

SqlLocalDB info MSSQLLocalDB

这会给你这样的东西:

Name:               mssqllocaldb
Version:            16.0.1130.5
Shared name:
Owner:              <user>
Auto-create:        Yes
State:              Running
Last start time:    10/15/2024 1:23:10 PM
Instance pipe name: np:\\.\pipe\LOCALDB#A6947BDD\tsql\query

如果

State
Stopped
,则需要从以下命令开始:

SqlLocalDB start MSSQLLocalDB

-2
投票

使用命名管道连接,如下所示

CONNECTION_NAME = "Provider=SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog="CatalogName";Data Source="Production_Server_Name;""
© www.soinside.com 2019 - 2024. All rights reserved.