Monday, March 19, 2012

[SQL-DMO]The name tdb_grabowy1 was not found in the Databases collection.

We need to copy about 25 databases whenever we get a new software
delivery. Currently, the process is to manually use the DTS database
copy wizard.

Doing some research, I created a DTS package to copy databases. But
this was not going to work since I have to hard code the database
names in the package. Back to RTFMing, I discovered the Dynamic
Properties Task. So now I setup a .bat file that calls dtsrun and via
global variables passes in the source and target database names to the
copy db DS package.

I did a simple test against a test database that I have and it worked.
But when I tried it against some "real" databases I get the following
errors. I have searched and googled but I have not found anything.
Help?

DTSRun OnError: Copy SQL Server Objects, Error = -2147199728
(80045510)
Error string: [SQL-DMO]The name 'tdb_grabowy1' was not found in the
Databases collection. If the name is a qualified name, use [] to
separate various parts of the name, and try again.
Error source: Microsoft SQL-DMO
Help file: SQLDMO80.hlp
Help context: 1131Hi

It is not clear why you need to update the data in a table if there is a
software delivery, normally I would expect scripts to make any of the
necessary changes, or if data is being imported then each database would
contain (common) code that would be able to do the import.

The error is reasonably self explaining. You are trying to use
'tdb_grabowy1' which either does not exists or you possibly don't have
permissions to use. If the database does exist try run the process just for
the one database on it's own.

If you process drops the database and then re-creates it, you could do this
task by restoring the database or copying the data and log files and then
attaching them.

John

"CxG" <chris.grabowy@.lmco.com> wrote in message
news:35c4f452.0409090837.77ca8573@.posting.google.c om...
> We need to copy about 25 databases whenever we get a new software
> delivery. Currently, the process is to manually use the DTS database
> copy wizard.
> Doing some research, I created a DTS package to copy databases. But
> this was not going to work since I have to hard code the database
> names in the package. Back to RTFMing, I discovered the Dynamic
> Properties Task. So now I setup a .bat file that calls dtsrun and via
> global variables passes in the source and target database names to the
> copy db DS package.
> I did a simple test against a test database that I have and it worked.
> But when I tried it against some "real" databases I get the following
> errors. I have searched and googled but I have not found anything.
> Help?
> DTSRun OnError: Copy SQL Server Objects, Error = -2147199728
> (80045510)
> Error string: [SQL-DMO]The name 'tdb_grabowy1' was not found in the
> Databases collection. If the name is a qualified name, use [] to
> separate various parts of the name, and try again.
> Error source: Microsoft SQL-DMO
> Help file: SQLDMO80.hlp
> Help context: 1131|||> It is not clear why you need to update the data in a table if there is a
> software delivery, normally I would expect scripts to make any of the
> necessary changes, or if data is being imported then each database would
> contain (common) code that would be able to do the import.

We are in development and when we get a new copy of the COTS products
then we make copies of the existing baseline databases to new baseline
copies. That way development, debugging, prod support can continue in
the previous baseline, until we get prod up and running on the new
baseline.

> The error is reasonably self explaining. You are trying to use
> 'tdb_grabowy1' which either does not exists or you possibly don't have
> permissions to use. If the database does exist try run the process just for
> the one database on it's own.

I am using a DTS package that copies databases. Its a simple package
that executes the Copy SQL Server Objects Task. Normally, it would be
hardcoded to copy a specific source database to a specific target
database, but I am using a Dynamic Properties Task to modify the
package attributes to allow me to specify a source/target database
name upon execution of the DTS package. tdb_grabowy is my play/test
database. I am attempting to copy it to tdb_grabowy1.

It is getting the noted error message in the middle of the execution
of the package.

No comments:

Post a Comment