if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[copyallwaterdata]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[copyallwaterdata]
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO

CREATE proc copyallwaterdata
as

DECLARE @SQLString VARCHAR(3000)
DECLARE @TABLENAME VARCHAR(80)

if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[needsynctablelist]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
begin

CREATE TABLE [dbo].[needsynctablelist] (
 [tablename] [varchar] (100) COLLATE Chinese_PRC_CI_AS NOT NULL ,
 [sync] [bit] NULL
) ON [PRIMARY]

ALTER TABLE [dbo].[needsynctablelist] ADD
 CONSTRAINT [DF_needsynctablelist_sync] DEFAULT (1) FOR [sync],
 CONSTRAINT [PK_needsynctablelist] PRIMARY KEY  CLUSTERED
 (
  [tablename]
 )  ON [PRIMARY]
end

insert into needsynctablelist
select *,1 from openquery(water,'select name from dbo.sysobjects where OBJECTPROPERTY(id, ''IsUserTable'') = 1 and name !=''needsynctablelist''' )
where not exists(select 1 from needsynctablelist where name=tablename)

DECLARE water_Cursor CURSOR FOR
select tablename from needsynctablelist where sync=1

OPEN water_Cursor

FETCH NEXT FROM water_Cursor into @TABLENAME
WHILE @@FETCH_STATUS = 0
BEGIN
    SET @SQLString =N' if exists (select 1 from dbo.sysobjects  where name='''+@TABLENAME+''')  drop table  '+@TABLENAME+' select *  into '+@TABLENAME+' from  openquery(water,''select * from dbo.'+@TABLENAME+''')'

exec (@SQLString)

FETCH NEXT FROM water_Cursor  into @TABLENAME
END

CLOSE water_Cursor
DEALLOCATE water_Cursor

GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[queryBasecodes]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[queryBasecodes]
GO

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

CREATE proc   queryBasecodes
AS
begin
select * from dbo.COLLDT

end
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

copyallwaterdata的更多相关文章

随机推荐

  1. Android笔记:利用InputStream和BufferedReader 进行字节流 字符流处理

    通过socket获取字节流处理时最初使用的是BufferedReader和PrintWriter  这种方式在解析字符串时是比较方便的 但是在处理字节时不够方便最终还是回归到InputStream和O ...

  2. H5 -- 本地存储计数器的值 和前端校验用户

    1. 存储计数器的值 <!DOCTYPE html> <html> <head lang="en"> <meta charset=&quo ...

  3. 移动端省际联动插件mobiscroll

    <link href="assets/css/mobiscroll.custom-2.17.0.min.css" rel="stylesheet" typ ...

  4. preg_match_all

    <meta charset="utf8"> <?php set_time_limit (0); for($i=1;$i<34;$i++){ $url = & ...

  5. SQLServer找出执行慢的SQL语句

      SELECT (total_elapsed_time / execution_count)/1000 N'平均时间ms' ,total_elapsed_time/1000 N'总花费时间ms' , ...

  6. [ArcEngine]IFeatureBuffer使用

    public static void LoadOnlyModeInsert(IFeatureClass featureClass, List < IGeometry > geometryL ...

  7. 装饰器、生成器,迭代器、Json & pickle 数据序列化

    1. 列表生成器:代码例子 a=[i*2 for i in range(10)] print(a) 运行效果如下: D:\python35\python.exe D:/python培训/s14/day ...

  8. swift 同步加载图片

    import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: ...

  9. iOS 导航控制器返回栈中的某一控制器

    #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...

  10. RPC、SQL、NFS属于OSI的哪一层

    第一层:物理层 第二层:数据链路层 802.2.802.3ATM.HDLC.FRAME RELAY 第三层:网络层 IP.IPX.ARP.APPLETALK.ICMP 第四层:传输层 TCP.UDP. ...