Upgrading and Migrating a Repository Database

Meta Data Services

Meta Data Services

Upgrading and Migrating a Repository Database

Upgrading a repository database updates the repository schema with new tables and columns that support repository engine 3.0 features. If you have upgraded to repository engine 3.0, you should upgrade your database so that it corresponds to the engine.

Upgrading and migrating a database are separate, optional tasks. For any repository database, you can do all or none of the following:

  • Upgrade the repository schema to the repository engine 3.0 format.

    After you install repository engine 3.0, you can choose whether to upgrade all or some of your repository databases. After you upgrade, however, you cannot open the database using a version 2.0 engine. Upgrading is unrelated to database migration. You can upgrade a repository database that you created in Microsoft® SQL Server™ version 6.5, for example, without having to migrate your SQL Server 6.5 database to a later version of SQL Server.

  • Migrate a repository database so that it runs on a more recent or different DBMS.

    You can migrate a database if you require performance improvements or the view generation features that are only available on SQL Server 2000.

How to Upgrade a Repository Database

You can upgrade a repository database by passing the REPOS_CONN_UPGRADE flag when you open the repository database using repository engine 3.0. For more information about REPOS_CONN_UPGRADE, see ConnectionFlags Enumeration.

If you are upgrading a SQL Server 6.5 or 7.0 database, you can either use the REPOS_CONN_UPGRADE flag or Meta Data Browser. To upgrade the database through the browser, you must edit the properties of a registered repository database. For more information, see Working with Repository Databases in Meta Data Browser.

Backward Compatibility with 2.0 Repository Databases

The version of the repository engine that you use to initially populate the database determines the version of the repository database. For example, if you used repository engine 2.0 to populate the repository database, the repository database is version 2.0.

Repository engine 3.0 is backward compatible with version 2.0 functionality and interfaces. When you use a 2.0 repository database, typically only the 2.0 engine features of repository engine 3.0 will work. However, two repository engine 3.0 features, IReposProperty2 and handling of bit properties, are available to 2.0 repository databases.

Most new features are provided through new interfaces. If you inadvertently invoke a repository engine 3.0 feature on 2.0 repository database, QueryInterface returns E_NOTIMPL for the interface that provides the new feature.

For more information about feature restrictions for an upgraded database, see Using Repository Engine Features with Older Databases.

How to Migrate a Repository Database

You can migrate a repository database from one DBMS version to another. Your DBMS provides these features.

To convert from a Jet database to a SQL Server database, you must copy the data in the Jet database to the SQL Server database using features provided by SQL Server and Microsoft Access. Next, you must set REPOS_CONN_RECOMPUTE on the Open command to add definitions that SQL Server 2000 Meta Data Services requires for SQL Server databases. For more information, see ConnectionFlags Enumeration.

See Also

Connecting to a SQL Server Repository Database

Generating Views

Repository SQL Schema

Retaining Legacy Components in a Repository

Upgrading the Repository Engine