现有以存储过程如下CREATE proc P_was
delete from t_backup
insert into t_backup select * from t_copy
delete from t_copy
insert into t_copy(Sender_id) select top 10 Sender_id from opendatasource('sqloledb','server=192.168.17.251;uid=sa;pwd=;database=KJ07').KJ07.dbo.RegionReport order by Last_time desc
select * from t_backup where Sender_id not in (select * from t_copy)GO
现在我想把server=192.168.17.251这个IP做成共C# 配置文件中读取,并且是动态的,IP地址是变化的。请问如何改动存储过程?

解决方案 »

  1.   

    opendatasource 这个东西是 哪里的语法。CREATE proc P_w 
    (
    @IP VARCHAR(15)
    ) as delete from t_backup insert into t_backup select * from t_copy delete from t_copy insert into t_copy(Sender_id) select top 10 Sender_id from opendatasource('sqloledb','server=192.168.17.251;uid=sa;pwd=;database=KJ07').KJ07.dbo.RegionReport order by Last_time desc select * from t_backup where Sender_id not in (select * from t_copy) GO 
    如下。
    CREATE proc P_w as delete from t_backup insert into t_backup select * from t_copy delete from t_copy insert into t_copy(Sender_id) select top 10 Sender_id from opendatasource('sqloledb','server=''+@IP+'';uid=sa;pwd=;database=KJ07').KJ07.dbo.RegionReport order by Last_time desc select * from t_backup where Sender_id not in (select * from t_copy) GO 
      

  2.   

    CREATE proc P_w(@server varchar(30))as
    delete from t_backup
    insert into t_backup select * from t_copy
    delete from t_copy
    insert into t_copy(Sender_id) 
     select top 10 Sender_id 
      from opendatasource('sqloledb','server='+@server+';uid=sa;pwd=;database=KJ07').KJ07.dbo.RegionReport 
         order by Last_time desc
    select * from t_backup where Sender_id not in (select * from t_copy)GO
      

  3.   


    CREATE proc P_w 
    (
    @IP VARCHAR(15)

    as 
    delete from t_backup 
    insert into t_backup select * from t_copy 
    delete from t_copy 
    insert into t_copy(Sender_id) select top 10 Sender_id
     from
     opendatasource('sqloledb','server='+@IP+';uid=sa;pwd=;database=KJ07').KJ07.dbo.RegionReport
     order by Last_time desc
     select * from t_backup where Sender_id not in (select * from t_copy) GO