DTS: Copy SQL Server object - why is doing this..

Hi,

I have a local SQL database and I want to update any modified tables to my hosted SQL database.  I can't use replication as I don't have the sysadmin permissions (I totally understand that).  So I have come up with the idea of using a DTS package to Copy the tables across.   I have set a task up in the COPY SQL SERVER OBJECTS options.  I have selected my source, my destination and my things to copy.  In the copy tab I have unticked everything EXCEPT the "Copy Data -> Replace Existing Data" (I want to do this) and in the "SELECT OBJECTS" I have only ticked the tables I want to copy. In the "OPTIONS" I have unticked everything except the "Copy PRIMARY and FOREIGN keys".

So when I run it it works fine but then fails and reports the following :

[Microsoft][ODBC SQL Server Driver][SQL Server]User does not have permission to alter database 'xxxxxx'
[Microsoft][ODBC SQL Server Driver][SQL Server]ALTER DATABASE statment failed
[Microsoft][ODBC SQL Server Driver][SQL Server]sp_dboption command failed

Okay, the data goes across fine and I get the update - but only when i run it manually! If I schedule it no data gets transferred.  So my problem is why is it trying to ALTER DATABASE? What options is using in sp_dboption? Why is it altering my database - surely it is just dropping and creating tables for which I have permissions to do!?  And if this is never going to work how can I transfer tables easily between servers?

Any help greatly appreciated
Mike
hydevAsked:
Who is Participating?
 
arbertCommented:
You said  "Okay, the data goes across fine and I get the update - but only when i run it manually! If I schedule it no data gets transferred.  So my problem is why is it trying to ALTER DATABASE? "

So, like I said above, if it indeed does work correctly when you run it, but fails when you schedule it, it's a permissions problem...
0
 
BillAn1Commented:
If you have "Copy PRIMARY and FOREIGN keys" checked then it is trying to modify the database, but I don;t think that is what is creating the problem. Is 'xxxxxx' the source or the target database?
If all you want to do is copy data, not the objects themseleves, you can do a simple transform task rather than a copy objects task.
You can pre-clude it with a truncate statement Execute SQL step if that is waht you need.
0
 
jdlambert1Commented:
All three error messages are do to having "Copy PRIMARY and FOREIGN keys" checked, without passing authentication credentials with enough permissions for that.
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
hydevAuthor Commented:
'xxxxx' is the name of my target database on the hosted server.

If the error is due to the "Copy PRIMARY and FOREIGN keys" how come it lets me create and set them in enterprise manager? Is that slightly different?  I appreciate I do log in to the server with enterprise manager.
0
 
arbertCommented:
When you schedule it, you aren't the user any more.  The user that logs on the SQLagent is the user/password that is used....
0
 
Eugene ZCommented:
ask DBA to help you
0
 
hydevAuthor Commented:
Thanks for the suggestions I have turned off the "Copy PRIMARY and FOREIGN keys" and it still happens.  Guess its something else..
0
 
BillAn1Commented:
Have you tried a straghtforward transform data task, as opposed to a copy object task?
This should be a more striaghtforward INSERT type statement.
0
 
hydevAuthor Commented:
I think you are pointing me in the correct direction so I shall award points on this one.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.