使用SSMS 2008客户端工具逆向生成了创建链接服务器的脚本时,在测试环境执行是报如下错误:'(null)' is an invalid product name.

USE [master]

GO

IF EXISTS (SELECT srv.NAME 

           FROM   sys.servers srv 

           WHERE  srv.server_id != 0 

                  AND srv.NAME = N'MES_DB_LINK_TEST') 

  EXEC master.dbo.Sp_dropserver 

    @server=N'MES_DB_LINK_TEST', 

    @droplogins='droplogins' 

 

go 

 

EXEC master.dbo.Sp_addlinkedserver 

  @server = N'MES_DB_LINK_TEST', 

  @provider=N'SQLNCLI', 

  @datasrc=N'192.168.xxx.xxx', 

  @catalog=N'TEST' 

 

EXEC master.dbo.Sp_addlinkedsrvlogin 

  @rmtsrvname=N'MES_DB_LINK_TEST', 

  @useself=N'False', 

  @locallogin=NULL, 

  @rmtuser=N'tuser', 

  @rmtpassword='123456' 

 

go 

消息 15429,级别 16,状态 1,过程 sp_addlinkedserver,第 45 行

'(null)' is an invalid product name.

出现如上错误,是因为这个是SQL Server Management Studio 的一个bug来的。它逆向生成脚本时,生成的脚本少了一些参数,所以你执行脚本时就会报上述错误。这个bug已经在SQL Server Management Studio 2012解决了,你用SSMS 2012逆向生成脚本就会发现会多一个参数@srvproduct

USE [master] 

 

go 

 

IF EXISTS (SELECT srv.NAME 

           FROM   sys.servers srv 

           WHERE  srv.server_id != 0 

                  AND srv.NAME = N'MES_DB_LINK_TEST') 

  EXEC master.dbo.Sp_dropserver 

    @server=N'MES_DB_LINK_TEST', 

    @droplogins='droplogins' 

 

go 

 

EXEC master.dbo.Sp_addlinkedserver 

  @server = N'MES_DB_LINK_TEST', 

  @srvproduct=N'', 

  @provider=N'SQLNCLI', 

  @datasrc=N'192.168.xxx.xxx', 

  @catalog=N'TEST' 

 

EXEC master.dbo.Sp_addlinkedsrvlogin 

  @rmtsrvname=N'MES_DB_LINK_TEST', 

  @useself=N'False', 

  @locallogin=NULL, 

  @rmtuser=N'tuser', 

  @rmtpassword='123456' 

 

go 

 

参考资料:

https://connect.microsoft.com/SQLServer/feedback/details/712415/create-script-generated-for-linked-server-via-ssms-is-not-usable

sp_addlinkedserver '(null)' is an invalid product name的更多相关文章

  1. mysql 修改列为not null报错Invalid use of NULL value

    场景:mysql 给表新增parent_id列,并设置为not null,保存时报错Invalid use of NULL value. 报错原因:因为已存在的数据的parent_id列为null,与 ...

  2. SQL Sever 博客文章目录(2016-07-06更新)

    SQL Server方面的博客文章也陆陆续续的写了不少了,顺便也将这些知识点整理.归纳一下下.方便自己和他人查看. MS SQL 数据类型 三大数据库对比研究系列--数据类型 MS SQL 表和视图 ...

  3. In-App Purchase Programming Guide----(三) ----Retrieving Product Information

    Retrieving Product Information In the first part of the purchase process, your app retrieves informa ...

  4. 03.product.js

    /* item.jd.com Compressed by uglify Author:keelii Date: 2014-08-05 6:52:26 [PM] */ function insertSc ...

  5. invalid conversion from 'void* (*)()' to 'void* (*)(void*)'

    void *thread1() ], NULL, thread1, NULL)) != ) 提示:invalid conversion from 'void* (*)()' to 'void* (*) ...

  6. 集合学习之"将集合对象List<Product>转换为Map"

    将集合对象List<Product>转换为Map key = Product对象的sku value =Product对象 1 List<Product> products = ...

  7. A Simple MVVM Example[Forward]

    In my opinion, if you are using WPF or Silverlight you should be using the MVVM design pattern. It i ...

  8. Get started with Google Analytics

    What is Google Analytics Google Analytics is a Google official analytics tool that is primarily used ...

  9. Asp.Net Core微服务再体验

    ASP.Net Core的基本配置 .在VS中调试的时候有很多修改Web应用运行端口的方法.但是在开发.调试微服务应用的时候可能需要同时在不同端口上开启多个服务器的实例,因此下面主要看看如何通过命令行 ...

随机推荐

  1. android 之 ListView 里面嵌套 GridView 遇到的问题及其解决方法。

    我们直接入主题.所有问题例子请参照下图 1,怎样使图片具有点击事件? 答: 解决方法: 在你的BaseAdapter里面不要设置下面这三个东西,然后再设置GridView的onItemClick. g ...

  2. java之文件基本操作

    java之文件基本操作 1 使用 BufferedReader 在控制台读取字符 public static void readChar() throws IOException{ char c; I ...

  3. Entity FrameWork 365日系列文章源码研究 (1)

    By KMSFan --  此系列的文章只作为自己的读书笔记,不纳入博客园首页. 总结的知识点: 1.DBContext 类 2.Attribute里的属性(NotNull) 3.DbContext实 ...

  4. Equals和ReferenceEquals

    稍微分析下一下两个方法的区别: public static bool Equals(object objA, object objB); public static bool ReferenceEqu ...

  5. mongodb安装配置

    下载安装 官网下载地址:https://www.mongodb.com/download-center 执行msi文件. 环境配置 可以参照我的步骤来进行配置,目录根据个人需要设置. 解压安装包到D: ...

  6. SqlServer基础之(触发器)

    概念:   触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触 ...

  7. 为Linux重新开发MVC,有图有真相

    1.写在前面 就连我们自己开始时也在问自己:我们为什么要开发一套MVC,微软的难道不可用用吗? 一开始的理由很简单.为了更好地跨平台部署;在Linux部署过.NET的人们应该知道, 部署起来是有点繁琐 ...

  8. 一个简单的inno setup模板

    一.模板代码 基本功能包括多路径安装.多语言.自定义图标. [Setup] ShowLanguageDialog=yes AppCopyright=Copyright Reserved(C) , 36 ...

  9. FreeRTOS 中断优先级嵌套错误引发HardFault异常解决(转)

      最近在使用FreeRTOS的时候,突然发现程序在运行了几分钟之后所有的任务都不再调用了,只有几个中断能正常使用,看来是系统挂掉了,连续测试了几次想找出问题,可是这个真的有点不知所措.      我 ...

  10. 使用VS Code开发 调试.NET Core 应用程序

    使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发及调试. https://github.com/aspnet/ ...