Microsoft Visual Studio Team Edition for Database Professionals
Release Notes

This document lists the system requirements to install Microsoft Visual Studio Team Edition for Database Professionals. This document also describes issues that you might find while you use this release. You can find an online version of this document, which contains the most recent updates, at http://go.microsoft.com/fwlink/?LinkId=78581.

 

1.   System Requirements

Visual Studio Team Edition for Database Professionals has the following system requirements:

·           Visual Studio Professional Edition, Visual Studio Team Suite, or one of the role-based SKUs of Visual Studio Team System. The trial version of Visual Studio Team Edition for Database Professionals requires Visual Studio Team Suite.

o       The Visual Basic or C# language feature must be installed

o       MSXML must be installed (It is installed by default)

o       Visual Studio Professional Edition is included on the DVD for Visual Studio Team Edition for Database Professionals.

·           Microsoft SQL Server 2005 Express, Developer, or Enterprise Edition installed and running for design-time validation on the same computer as Visual Studio. For more information, see http://go.microsoft.com/fwlink/?LinkID=78582.

·           Microsoft Windows 2000 with Service Pack 4 (SP4), Windows XP with Service Pack 2 (SP2), or Windows Server 2003 with Service Pack 1 (SP1). If Visual Studio Team Edition for Database Professionals has problems running on the release version of Windows Vista, a service release will be made available.

 

You can order trial versions of Visual Studio Professional Edition or Visual Studio Team Suite at http://go.microsoft.com/fwlink/?LinkId=78583.

 

Before you install Visual Studio Team Edition for Database Professionals, you must uninstall any earlier community technical previews (CTPs) of Visual Studio Team Edition for Database Professionals.

 

2.   Known Issues

2.1.                    Installation

2.1.1.   Unattended installation

You can install Visual Studio Team Edition for Database Professionals at a command prompt such that no user intervention is required to complete the installation. This type of installation referred to as a “silent” installation, and you might use it, for example, to install the product on several computers simultaneously. To perform a silent installation, you must create a file that specifies installation options for the product. You can use this file to install the product completely or to uninstall it. You cannot use this process to repair or reinstall the product.

To resolve this issue

To create an information file for unattended installation:

1.       Run the Setup application from the installation folder by using the following command line:

Setup\setup.exe /createunattended Path:\infofile.ini

2.       Follow the steps in the setup wizard to complete the installation.
In effect, you are recording an installation script. When the wizard finishes, it will produce a file called infofile.ini. You can copy that file so that other users can perform unattended installation with the same options that you used in step 2.

Note: The setup application might terminate unexpectedly if you create an unattended installation file to uninstall the product. This termination does not affect the contents of the file, which can be used to uninstall the product.

To use the information file to perform an unattended installation:

·         Run the Setup application from the installation folder by using the following command line:

Setup\setup.exe /unattendpath Path:\infofile.ini

2.1.1.   Installation and Visual Studio 2005 language

If the language of the version of Team Edition for Database Professionals that you install does not match the language of your installation of Visual Studio 2005, you cannot perform unit tests on a database.

To resolve this issue

You must install the version of Team Edition for Database Professionals whose language matches that of your installation of Visual Studio 2005.

2.1.2.   Installation fails due to missing ProjectAggregator2

If you are installing Team Edition for Database Professionals onto a localized platform, the Setup application might fail, indicating that ProjectAggregator2 cannot be found.

To resolve this issue

You can manually install ProjectAggregator2. Locate ProjectAggregator2.msi in the location from where you launched the product installation. Typically, you will find this .msi file on the physical media in the wcu\ProjectAggregator folder. After you have installed ProjectAggregator2, you can re-run the Setup application to install Team Edition for Database Professionals.

2.1.3.   Repair and Reinstall

If you must repair or reinstall Team Edition for Database Professionals, you must have access to the source files for your original installation. For example, if you originally installed from a DVD, you must have the DVD to repair or reinstall the product. If you installed from a network share, the same network share must be available to repair or reinstall the product.

To resolve this issue

If you installed the product from a CD or DVD, put that disc in your computer either before you try to repair or reinstall the product or when you are prompted during the repair or reinstall operation. If you installed the product from a network share, make sure that the network share is available before you try to repair or reinstall the product.

2.1.4.   Installation requires at least one Visual Studio programming language

To install Team Edition for Database Professionals, you must have an existing installation of Visual Studio 2005, and that installation must have at least one programming language installed.

To resolve this issue

Before you install Team Edition for Database Professionals, re-run the Setup application for Visual Studio 2005, and specify at least one programming language as part of the installation process.

2.2.                    General

2.2.1.   Supported versions of SQL Server

There are a limited number of Microsoft SQL Server versions and compatibility modes from which you can import schemas and to which you can deploy databases. The following table shows from which versions and compatibility modes you can import database schemas into which types of database projects.

 

Source Database Server

SQL Server 2000

SQL Server 2005

Database Compatibility

6.5

7.0

8.0

6.5

7.0

8.0

9.0

SQL Server 2000 Database Project

Not Supported

Not Supported

Supported

Not Supported

Not Supported

Supported*

Not Supported

SQL Server 2005 Database Project

Not Supported

Not Supported

Supported

Not Supported

Not Supported

Supported

Supported

* - You can import objects from a SQL Server 2005 database into a SQL Server 2000 database project only if SQL Server 2000 supports those objects.

For database deployment, the following table shows which versions and compatibility modes are supported for the source database project and target database server.

 

Target Database Server

SQL Server 2000**

SQL Server 2005

Database Compatibility

6.5

7.0

8.0

6.5

7.0

8.0

9.0

SQL Server 2000 Database Project

Not Supported

Not Supported

Supported

Not Supported

Not Supported

Partially Supported

Partially Supported

SQL Server 2005 Database Project

Not Supported

Not Supported

Not Supported

Not Supported

Not Supported

Not Supported

Partially Supported

 

** - You must have applied SQL Server 2000 Service Pack 4 (SP4) to successfully deploy your database project with Team Edition for Database Professionals.

 

2.2.2.   Compatibility with prior CTPs

If you have database projects that you created by using a CTP of Team Edition for Database Professionals older than CTP6, you cannot open them. To implement new features, some breaking changes were required in the file formats for database projects, data generation plans, and database unit tests.

To resolve this issue

Create a database project. On the Project menu, click Add Existing Item to add the .sql files that contain your database object definitions. You must manually recreate any data generation plans and database unit tests.

2.2.3.   Renaming files that are contained in a database project

File names for project items are not necessarily robust to underlying changes. If you change the name of a file, you might not be able to reload your project.

To resolve this issue

Avoid renaming the files outside of Visual Studio.

2.2.4.   Help topic integration

You must install the MSDN Library that contains the documentation for Visual Studio Team Edition for Database Professionals for help topics to appear when you press F1.

2.2.5.   Connect Properties and Save my Password

If you use SQL Server Authentication when you connect to a database server, your encrypted password is saved to your local registry even if you do not select the Save my password check box.

To resolve this issue

There is no workaround for this issue at this time.

2.3.                    Database Project, Build, and Deployment

2.3.1.   Required Permissions to Create and Use Database Projects

To create and use database projects, you must belong to the securityadmin and the dbcreator fixed server roles for your design-time validation database. In addition, if you are not connecting to SQL Server as a member of the sysadmin role, you must have View Server State permissions on the server and a member of the sysadmin role must run the following script:

USE MASTER

GO

GRANT EXECUTE ON sp_detach_db TO public

GO

To resolve this issue

Have your database administrator add you to the securityadmin and dbcreator fixed server roles. If you run as sysadmin, you already belong to these roles.

2.3.2.   Changing the target database project in the Import Database Schema dialog box

If you have multiple database projects in a single solution, you cannot click one project, use the Import Database Schema command, and change the target in the Import Database Schema dialog box. Even if you specify a different project in that dialog box, the schema will be imported to the project that you initially clicked. 

Example: You have a solution that contains database projects ProjectA and ProjectB. You click ProjectA and use the Import Database Schema command. Even if you change the target in the Import Database Schema dialog box to ProjectB, the schema will be imported to ProjectA.

To resolve this issue

Click the correct target database project before you use the Import Database Schema command. If you click the wrong target, click Cancel to close the Import Database Schema dialog box, click the correct target, and use the Import Database Schema command again.

2.3.3.   Opening the same database project in multiple instances of Visual Studio

You cannot open a database project in more than one instance of Visual Studio. If you try to open a database project that is already open in another instance of Visual Studio, an error appears that says "The design database is locked. If you are trying to open a database project that is already open in another instance of Visual Studio, you must first close the other instance."

To resolve this issue

Close the solution that contains the database project in the other instance of Visual Studio.

2.3.4.   Importing schemas that contain encrypted objects

If you import a schema that has one or more encrypted objects in it, those objects will not be imported and no error will appear.

To resolve this issue

You can add the objects to the database project manually. In Schema View, right-click the database project node, point to Add, and click the type of encrypted object that you want to add, such as Procedure.

2.3.5.   Deploying a database project with new users

When you add users to a database project, if the related logins do not exist, you must add them. You do so by adding the sp_addlogin (SQL Server 2000) or CREATE LOGIN (SQL Server 2005) statements to the Logins.Sql script that the pre-deployment script includes.

To resolve this issue

In Solution Explorer, expand the Scripts folder, open the Pre-Deployment folder and double-click the Logins.sql file to open it in the Transact-SQL (T-SQL) editor. Add the sp_addlogin or CREATE LOGIN statements, and then save your changes before you build and deploy your database project.

2.3.6.   Restarting SQL Server when a database project is open

If you stop and restart your local instance of SQL Server when a database project is open, an error message appears and indicates that you have lost your connection. Any modifications to the database project will cause the error message to reappear until you unload and reload your project.

To resolve this issue

In Solution Explorer, click your database project, open the Project menu, and then click Unload Project. When the project is unloaded, open the Project menu and then click Reload Project. As an alternative, you can close and reopen your solution.

2.3.7.   Full-text index files

If you add a full-text index to your database project from Schema View and your Schema View is sorted by Type, the file for the index might get created directly under the project node.

To resolve this issue

Sort Schema View by Schema before you add the index. As an alternative, you can open Solution Explorer, open the Schema Objects folder, open the tables Folder, open the Indexes folder, and manually move the script to the Indexes folder after you add the file.

2.3.8.   Visual Studio Team Foundation Build Integration

If you use Team Foundation Build, the output from building the database project (the .sql file that contains all the statements for deploying the database) is not automatically copied to the build drop area.  In addition, the TargetDatabase and TargetConnectionString properties are stored in the .user file.

To resolve this issue

Find the .sql build file in the path that is specified in the project properties (usually relative to the database project folder) and copy it as needed. To build successfully from Team Foundation Build, you must modify the ProjectName.dbproj file to add the TargetDatabase and TargetConnectionString properties from the ProjectName.dbproj.user file for the configuration that you want to build.

2.3.9.   Errors from the Import Script Wizard

If you import database objects by using the Import Script wizard, no errors appear even if errors are encountered. Any statements that cannot be successfully interpreted are ignored and files for them are not generated in the database project.

To resolve this issue

There is no workaround for this issue at this time.

2.3.10.                       The Import Script Wizard and sp_execsql

If you import a script that contains DLL statements that are embedded inside sp_execsql calls, any objects that are defined within those DLL statements are not added to the database project. For example, the procedure in the following example will not be added to the database project:

EXEC dbo.sp_executesql @statement = N'

-- Proc Comments go here

CREATE PROCEDURE [dbo].[my_proc]

            @p1 NVARCHAR(40)

AS

SET NOCOUNT ON

SELECT @p1

'

To resolve this issue

If you have a database that contains the object definitions, you can use the Import Database Schema command into an empty database project. If you must add the missing object definitions to a database project that already contains object definitions, you can use Schema Compare to compare the database to your database project, and then write the additional objects to the database project.

2.3.11.                       Triggers in Solution Explorer

If you add or import triggers, they are added beneath the Schema Objects folder, rather than beneath the Triggers folder.

To resolve this issue

You must move the files to the correct location within the database project.

2.3.12.                       Unexpected exception encountered. Details of the exception can be found in the file {0}.

If the Transact-SQL statement interpreter stops responding while reading an SQL statement, an error appears in the Error List window. Also, a temporary file that has information about the exception is created in the Windows Temp folder with a file name of TS Data Guid.tmp.

To resolve this issue

If this error appears, report it through the Microsoft Connect site and attach the temporary file.

2.3.13.                       Renaming Database Projects

If you rename your database project, any existing .dbproj.user files are not renamed. The project settings that are stored in the .dbproj.user file are saved to the new name, but the old file will remain.

To resolve this issue

You must manually delete the old .dbproj.user files after you rename a database project.

2.3.14.                       Stored Procedure Parameters and Case Sensitivity

The parameters of a stored procedure are case sensitive if the design-time validation database server is case sensitive, regardless of the collation setting of the database project.

To resolve this issue

If your stored procedure parameters must be case insensitive, set your design-time validation database server to be case insensitive.

2.4.                    Database Unit Testing

2.4.1.   Only one batch statement is supported per test script for database unit testing

Only the first batch statement is processed.

To resolve this issue

Avoid using more than one batch statement in your unit test scripts.

2.4.2.   Changing connection strings

The app.config file in your test project contains connection strings to a database that you are testing. If a connection string specifies an incorrect server or database, database unit tests in that test project fail. Even if you correct the connection string in the app.config file and run tests, the tests still fail.

To resolve this issue

After you correct the connection string, rebuild the test project. Then run the database unit tests again.

2.4.3.   Opening a data generation plan while the Database Unit Test Designer is open

You might experience a delay if you open a database unit test in the Database Unit Test Designer and then you open the test’s data generation plan without first closing the designer.

To resolve this issue

Before you open a data generation plan, close the Database Unit Test Designer for any database unit tests that are associated with that data generation plan.

2.4.4.   Test Condition Extensibility

If an error occurs when a custom test condition is loaded, no error appears. However, the test condition does not appear in the list of test conditions in the Database Unit Test Designer.

To resolve this issue

You must fix the issue with the test condition before it will appear in the list.

2.4.5.   Registering new test conditions

The Extensions.xml file format has changed slightly from earlier CTPs. You must use the new format for your test condition to appear in the user interface. For more information, see the product documentation.

To resolve this issue

You must update the Extensions.xml file to match the following example:

<?xml version="1.0" encoding="utf-8" ?>

  <extensions assembly="<enter assembly name here>, Version=1.0.0.0, Culture=neutral, PublicKeyToken=<enter key here>" version="1"  xmlns="urn:Microsoft.VisualStudio.TeamSystem.Data.Extensions" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:Microsoft.VisualStudio.TeamSystem.Data.Extensions Microsoft.VisualStudio.TeamSystem.Data.Extensions.xsd">

 <extension type="<enter extension type here>" enabled="true" />

</extensions>

2.4.6.   Database unit tests for triggers that are based on views

Transact-SQL (T-SQL) code stubs will not be automatically generated for database unit tests for triggers that are based on views. If you right-click on a trigger that is based on a view, the Create Unit Tests menu item is disabled on  the context menu.

To resolve this issue

You must manually create a database unit test for the trigger by writing the appropriate T-SQL statements in a new database unit test.

2.4.7.   Unit tests on different locales

If you create database unit tests that must run on a computer that is set to a different locale than that of the computer on which the unit test was created, you must specify the expected results in the format of the locale where the unit test will be run. This issue primarily effects the Expected Value property for Scalar Value test results. If you want to run unit tests on multiple locales, you must create one test per set of conditions for each locale.

2.5.                    Data Generator

2.5.1.   Inserting too many rows during Data Generation

After you create a data generation plan, if you specify too large a value for the Rows to Insert field for one or more tables in your database, Visual Studio might encounter an exception when generating data into your database. The maximum value that causes the exception depends on the configuration of your database server.

To resolve this issue

Specify fewer rows to insert. For example, on a 1.7 GHz computer with 1 GB of RAM, we recommend that you insert no more than 1000 rows into each table in the Northwind database.

2.5.2.   Deleting too many rows during Data Generation

Before data is generated for your database, you are asked whether you want to clear the contents of the selected tables. If you choose to clear the contents of those tables and the selected tables contain a large number of rows, a SQL timeout error might appear in the Error List window. The number of rows required to cause this problem depends on the configuration of your database server.

To resolve this issue

Use SQL Server management tools to delete the rows from the tables before you attempt to generate data.

2.5.3.   Connecting from Data Generator to Microsoft SQL Server 2000

If you installed Microsoft SQL Server 2000 after you installed SQL Server 2005 or SQL Server Express, a known issue prevents the SQL Browser from reading that instance’s registry key. As a result, that instance will not be exposed for port resolution, and TCP will not function. You might receive a connection error message.

To resolve this issue

For information about a workaround for this problem, see http://go.microsoft.com/fwlink/?LinkId=78584.

2.5.4.   Constraints and Data Generator

When you populate a database, Data Generator does not take constraints into account. As a result, SQL Server might raise errors if you attempt to populate a database that includes constraints.

To resolve this issue

Change the generator properties to match the table or column constraints that will affect population. For example, you can change your generator to the Regular Expression generator and supply a pattern that will satisfy the constraint, or you can change your generator to the Schema Bound generator and use data that satisfies the constraint.

2.5.5.   Unhandled exceptions in custom generators can cause Visual Studio to stop responding or terminate unexpectedly.

If you create a custom generator and that generator causes an unhandled exception, that unhandled exception might cause Visual Studio to stop responding or terminate unexpectedly.

To resolve this issue

You must identify and handle exceptions within your custom generator.

2.6.                    Schema and Data Compare

2.6.1.   Schema Compare shows permissions as missing in the database project

You can import a schema from a database into a database project and then compare schemas using the database as the source and the database project as the target. However, any permissions that originated in the source database will appear as missing in the target (the database project).

To resolve this issue

There is currently no workaround for this issue. However, to verify the permissions that were imported, examine the post-deployment script. To open this script, expand your database project in Solution Explorer, expand the Scripts folder, expand the Post-deployment folder, and then double-click the script.postdeployment.sql file.

2.6.2.   Write schema updates to target project when objects with extended properties have changed

If you use Schema Compare to write updates to a database project, and one or more of the changed objects has extended properties, those properties will be lost. If you compare the database and the database project a second time, the extended properties will still be missing.

To resolve this issue

If the number of objects with extended properties is small, you could click Export to Editor instead of Write Updates and then manually apply changes to the definitions for those objects that have extended properties. If there are many changes to objects with extended properties, you could instead create a new database project and then import the database schema.

2.6.3.   Data Compare and decimal separators

Data Compare will always use a ‘.’ as the decimal separator for columns that are decimal or money types, even for locales that use a different decimal separator character (such as a comma). Columns of other data types, such as real and double, will use the correct decimal separator for your locale.

To resolve this issue

There is no workaround for this issue.

2.7.                    Database Refactoring

2.7.1.   Refactoring scripts that are stored in Visual SourceSafe

If you use a refactoring operation to update scripts that are stored in Visual SourceSafe, a warning message appears for each script (.sql) file that the operation updates. The message reads “There already exists an item with the same name under source control. If you continue with the add, this item will automatically assume the identity of the item under source control. Do you wish to proceed with the add anyway?”

To resolve this issue

Select the Don’t show this dialog box again (Always allow add of existing items) check box to keep the message from reappearing.

2.8.                    Transact-SQL (T-SQL) editor

2.8.1.   Incorrect error line number when executing stored procedures

If you execute a stored procedure in the T-SQL editor, an error occurs within that stored procedure, and you double-click the error in the Error List window, you will always go to the first line in the editor. The line number that appears in the Error List window is the line number within the stored procedure, not the line number within the editor.

To resolve this issue

Open the source for the stored procedure to display the line that resulted in the error. If the stored procedure is defined within a database project, you can double-click the stored procedure in Solution Explorer or Schema View to open it in the editor.