SET ANSI_NULLS ON  
GO  
SET QUOTED_IDENTIFIER ON  
GO  
CREATE PROCEDURE InsJS  
AS  
BEGIN  
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','IP'   
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','密码'    
select * from srv_lnk.库.dbo.表   
exec sp_dropserver 'srv_lnk','droplogins'   
go  
END  go

解决方案 »

  1.   

    go不是sql语句,是微软的sql工具识别的命令
      

  2.   

    系统返回如下信息
    消息 102,级别 15,状态 1,过程 InsJS,第 10 行
    'droplogins' 附近有语法错误。
    消息 102,级别 15,状态 1,第 1 行
    'END' 附近有语法错误。
      

  3.   

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE InsJS
    AS
    BEGIN
    exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','222.190.111.117'
    --go 
    exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','njemc51862371' 
    --go 
    select * from srv_lnk.njenvironment.dbo.监测点基本信息表 
    --go 
    exec sp_dropserver 'srv_lnk','droplogins' 
    go
    END
    go消息 102,级别 15,状态 1,过程 InsJS,第 10 行
    'droplogins' 附近有语法错误。
    消息 102,级别 15,状态 1,第 1 行
    'END' 附近有语法错误。
      

  4.   

    CREATE PROCEDURE InsJS  
    AS  
    BEGIN  
    exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','IP'   
    exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','密码'    
    select * from srv_lnk.库.dbo.表   
    exec sp_dropserver 'srv_lnk','droplogins'   
    END  
      

  5.   

    GO 不是 Transact-SQL 语句;它是 sqlcmd 和 osql 实用工具以及 SQL Server Management Studio 代码编辑器识别的命令。SQL Server 实用工具将 GO 解释为应该向 SQL Server 实例发送当前批 Transact-SQL 语句的信号。当前批语句由上一 GO 命令后输入的所有语句组成,如果是第一条 GO 命令,则由即席会话或脚本开始后输入的所有语句组成。 GO 命令和 Transact-SQL 语句不能在同一行中。但在 GO 命令行中可包含注释。用户必须遵照使用批处理的规则。例如,在批处理中的第一条语句后执行任何存储过程必须包含 EXECUTE 关键字。局部(用户定义)变量的作用域限制在一个批处理中,不可在 GO 命令后引用。
    SQL Server 应用程序可以将多个 Transact-SQL 语句作为一个批发送到 SQL Server 的实例来执行。然后,该批中的语句被编译成一个执行计划。程序员在 SQL Server 实用工具中执行特殊语句,或生成 Transact-SQL 语句的脚本在 SQL Server 实用工具中运行时,使用 GO 作为批结束的信号。如果基于 ODBC 或 OLE DB API 的应用程序试图执行 GO 命令,会收到语法错误。SQL Server 实用工具从不向服务器发送 GO 命令。
      

  6.   

    SET ANSI_NULLS ON 
    GO 
    SET QUOTED_IDENTIFIER ON 
    GO 
    CREATE PROCEDURE InsJS 
    AS 
    BEGIN 
    exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','222.190.111.117' 
    --go  
    exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','njemc51862371'  
    --go  
    select * from srv_lnk.njenvironment.dbo.监测点基本信息表  
    --go  
    exec sp_dropserver 'srv_lnk','droplogins'  
    --go 
    END 
    go 
      

  7.   

    结果报这个错
    消息 7202,级别 11,状态 2,过程 InsJS,第 8 行
    在 sysservers 中找不到服务器 'srv_lnk'。请执行 sp_addlinkedserver 将该服务器添加到 sysservers。