· 6 years ago · Jul 15, 2019, 08:40 PM
1INSERT INTO dbo.table
2 SELECT *
3 FROM remoteserver.remotedatabase.dbo.remotetable
4
5-- do the data loading
6INSERT INTO dbo.table
7 SELECT *
8 FROM remoteserver.remotedatabase.dbo.remotetable;
9
10-- create the indexes if they do not exist
11
12if NOT exists ( select * FROM [remoteserver].[remotedatabase].[dbo].[sysindexes] where name = 'pk_remotetable' )
13
14ALTER TABLE [remoteserver].[remotedatabase].[dbo].[remotetable] ADD CONSTRAINT [pk_remotetable] PRIMARY KEY CLUSTERED ( [remotetable_ID] ASC );
15
16go
17
18if NOT exists ( select * FROM [remoteserver].[remotedatabase].[dbo].[sysindexes] where name = 'nc_index1' )
19
20 CREATE NONCLUSTERED INDEX [nc_index1] ON [remoteserver].[remotedatabase].[dbo].[remotetable] (
21 [col1] ASC) INCLUDE ( [col2], [col3])
22
23go
24
25if exists ( select * FROM [remoteserver].[remotedatabase].[dbo].[sysindexes] where name = 'pk_remotetable' )
26
27ALTER TABLE [remoteserver].[remotedatabase].[dbo].[remotetable] DROP CONSTRAINT [pk_remotetable]
28
29go
30
31if exists ( select * FROM [remoteserver].[remotedatabase].[dbo].[sysindexes] where name = 'nc_index1' )
32
33DROP INDEX IX_index1 ON [remoteserver].[remotedatabase].[dbo].[remotetable]
34
35go