/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • RSS订阅

解决SQL Service创建链接服务器出现(null) 是无效的产品名称的问题

2014-07-13 十有三 0 浏览:2万+ 数据库 SQL Server | 异常处理

在使用SQL Service 2005/2008 创建链接服务器时,有出现过:"消息 15429,级别 16,状态 1,过程 sp_addlinkedserver,第 42 行'(null)' 是无效的产品名称。"的问题,从该错误提示上来看,主要是创建链接服务器的时候没有输入产品名称的原因。根据不同的创建方式以下分为两种解法方法,解决方法如下:

情况一:使用SQL语句创建链接服务器出现此问题

这是原来添加链接服务器SQL语句的第一句:

EXEC master.dbo.sp_addlinkedserver @server = N'My_LinkService', @provider=N'SQLNCLI', @datasrc=N'192.168.1.1'

我们可以看到一共传入了 server(链接服务器名称),provider(访问接口),datasrc(数据源)这三个参数和值。

由于错误提示我们的是null是无效的产品名称,所以我们必须要传入产品名称,参数名为srvproduct,值的话随便填一个好记的就可以了。最终这句SQL代码如下:

EXEC master.dbo.sp_addlinkedserver @server = N'My_LinkService', @provider=N'SQLNCLI', @datasrc=N'192.168.1.1',@srvproduct=N'mypro'

这里是完整的创建语句,仅作参考,具体参数根据自己数据库和需求更改:

/****** 对象:  LinkedServer [My_LinkService]    脚本日期: 07/14/2014 10:34:38 ******/
EXEC master.dbo.sp_addlinkedserver @server = N'My_LinkService', @provider=N'SQLNCLI', @datasrc=N'192.168.1.1',@srvproduct=N'mypro'
 /* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'My_LinkService',@useself=N'False',@locallogin=NULL,@rmtuser=N'sa',@rmtpassword='123456'

GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'collation compatible', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'data access', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'dist', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'pub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'rpc', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'rpc out', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'sub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'connect timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'collation name', @optvalue=null
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'lazy schema validation', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'query timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'My_LinkService', @optname=N'use remote collation', @optvalue=N'true'

 

情况二:使用SQL Service可视化界面新建链接服务器出现此问题

如果是使用可视化视图界面进行链接服务器添加的话,只要在添加界面输入产品名称即可。如下图:


作者:十有三

出处:https://shiyousan.com/post/635408773769286544

版权声明:本文采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请声明出处或保留此段声明。


  • 上一篇: C# 由数字1、2、3、4、5、6六个数字共可组成多少个没有重复数字的四位数,输出这些数据并统计个数。
  • 下一篇: 龙游浅水遭虾戏,虎落平阳被犬欺出处

相关文章
  • MongoDB学习笔记:batchInsert is not a function
  • SQL使用ROW_NUMBER函数获取没有ID的当前数据的上下文数据(上一条和下一条)
  • 解决SQL SERVER还原数据库错误:备份介质集不完整。介质簇计数: 2。缺失的介质簇序列号: 1
  • 记录MongoDb连接错误System.TimeoutException: A timeout occured after 30000ms selecting a server
  • 创建 SQL Server Express自动备份数据库功能
  • MongoDB学习笔记:28663 Cannot start server. The default storage engine 'wiredTiger' is not available

文章分类

.NET技术 123 数据库 24 Web前端 21 网站建设运维 37 操作系统与应用 66 程序猿日常 11 开发工具 12 其他随笔 13

文章标签

ASP.NET ASP.NET MVC C# CSS HTML IIS Javascript Linux MongoDB MySql SQL SQL Server Visual Studio Windows系统 版本控制系统 插件工具 服务器 搞笑娱乐 好文分享 软件应用 生活知识 手机问题 随笔 网络知识 网站设计优化 网站维护 养生保健 异常处理 硬件设备 游戏攻略

热门文章

  • IIS8如何安装和使用URL重写工具-URL Rewrite
  • 林蛋大与楚中天,朱肚皮与朱月坡
  • 解决IE11安装升级失败和在安装前需要更新的问题
  • Windows Server 2012无法安装 .NET3.5-安装角色或功能失败,找不到源文件
  • VS重构重命名的快捷键

推荐文章

  • C# List.ForEach方法结合匿名函数的便捷使用
  • WIN10 添加美式键盘并设置为默认输入法
  • 记录MongoDb连接错误System.TimeoutException: A timeout occured after 30000ms selecting a server
  • IE11 Exception in window.onload: Error: An error has ocurredJSPlugin.3005
  • 解决向日葵远程控制软件鼠标滚轮失效无法上下滚动

友情链接

  • Passingwind的博客
  • 码友网

知识共享许可协议 CC BY-SA 4.0本站作品采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。
闽ICP备15003702号
闽公网安备 35020302035102号