Solved

Can't run SQL DTS package after snapshot replication

Posted on 2006-11-06
4
248 Views
Last Modified: 2009-07-29
We have SQL Server 2003 running on a Windows Server 2003 ("Server").  On a nightly basis, the data tables (only) of a database called "ABC" are FTP'd to our Server.  We also keep a working copy of the ABC database on the server called "ABCCopy" which has, in addition to the data tables, any other views or stored procedures we have developed.  A DTS package executed nightly will drop, and copy back, the data tables in ABCCopy from ABC, but will not drop or change any of the views, sp's, etc.  The data tables change structure fairly frequently (usually in the form of added fields).

I and another person are usually the only people working with the ABCCopy database (we both had SQL Server 2003 on our local machines).  We normally used our own DTS packages from Enterprise Manager to copy the Server ABCCopy to our local machines.  No problem.  However, I just recently installed Visual Studio 2005 which came with SQL Server 2005, so I installed that on my client machine (call it "Client B") to "check it out".

On Friday, when I tried to run the DTS package I usually use under "Legacy > Data Transformation Services," I received the message:

OBJECT EXPLORER
SQL Server 2000 DTS Designer Components are required to edit DTS Packages. Install the special Web
download, "SQL Server 2000 DTS Designer Components" to use this feature.
(Microsoft.SqlServer.DTSObjectExplorerUI)
[OK]

So I downloaded it, installed, it and kept on getting the above message.  Getting nowhere, it seemed, I ended up creating a snapshot publication on the "Server" and a Subscription publication on my machine ("Client B").  No problem, lovely.

However, the following Monday, she noticed that (a) it didn't appear that the DTS package which copied the data from ABC to ABCCopy had worked since the publication / replication was put into place on Friday, and (b) she receives the following error when attempting to copy down ABCCopy from the server to her machine ("Client A"):

PACKAGE ERROR
[Microsoft SQL-DMO (ODBC SQLState: 42000)
[Microsoft][ODBC SQL Server Driver][SQL Server]Cannot drop the table 'dbo.tablename' because it is being used for replication.
[OK]

(...which makes me wonder if this is truly a snapshot or a transactional replication)

She WAS able to run the DTS package as long as she didn't drop the data tables first, but as described previously, she does that to ensure that the structure changes are brought down from ABC.

I guess the issue involves several different questions, the main question is what is the best strategy to perform these transformations / replications?  Can they co-exist?  Why can't I perform the legacy DTS package I had previously?  Can she "unlock" the database ABCCopy from replicating with SQL Server 2003 (i.e., without SQL Server 2005 - I am out of the office frequently)?

Any suggestions would be helpful.
0
Comment
Question by:kmoloney
  • 2
  • 2
4 Comments
 
LVL 29

Expert Comment

by:Nightman
ID: 17882973
SQL 2005.

You can't have snapshots accross instances, never mind servers. So if this is on a different machine, then you are either doing database mirroring, peer-to-peer replication or log shipping. If you were log shipping, you would know about it.

This is a replicated table, which then cannot be dropped. The alternative is to break mirroring, drop the table, backup the log (and database), resynchronise your databases and then remirror - a pain the the ... you get the picture.

If it was a snapshot (which must be on the same instance), you could drop the table. SQL actually uses the NTFS COW (copy on write, which is actually copy before write) and would update your snapshot with the entire table contents before the drop table.

(Also, not sure what this SQL Server 2003 is - there is SQL 2K and SQL 2005)
0
 
LVL 2

Author Comment

by:kmoloney
ID: 17883481
Ooops...got confused with all those different versions of different software out there.  Its 2000.
0
 
LVL 29

Accepted Solution

by:
Nightman earned 500 total points
ID: 17883513
No problem ;)

I have 2 versions of VS installed, SQL 2000, SQL 2005 as well as VS6. Wait till you have to code in multiple environments and start mixing up your operators!
0
 
LVL 2

Author Comment

by:kmoloney
ID: 17923999
You obviously know your stuff!
0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Nowadays, some of developer are too much worried about data. Who is using data, who is updating it etc. etc. Because, data is more costlier in term of money and information. So security of data is focusing concern in days. Lets' understand the Au…
Let's review the features of new SQL Server 2012 (Denali CTP3). It listed as below: PERCENT_RANK(): PERCENT_RANK() function will returns the percentage value of rank of the values among its group. PERCENT_RANK() function value always in be…
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Viewers will learn how to use the SELECT statement in SQL and will be exposed to the many uses the SELECT statement has.

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question