diff --git a/extensions/sql-database-projects/README.md b/extensions/sql-database-projects/README.md index b3087e7207..bc4431e110 100644 --- a/extensions/sql-database-projects/README.md +++ b/extensions/sql-database-projects/README.md @@ -1,27 +1,49 @@ -# Microsoft SQL Server Database Projects for Azure Data Studio and VS Code +# SQL Database Projects for Azure Data Studio and VS Code ## Overview -Microsoft SQL Server Database Projects for Azure Data Studio and VS Code provides a way to design, edit, and publish schemas for SQL databases from a source controlled project. +SQL Database Projects for Azure Data Studio and VS Code provides a way to design, edit, and publish schemas for SQL databases from a source controlled project. For a complete development workflow, build and deploy your database projects in CI/CD pipelines, such as [GitHub Actions](https://github.com/azure/sql-action) or Azure DevOps. -### VS Code +Learn more about the SQL Database Projects extension in the documentation: https://aka.ms/azuredatastudio-sqlprojects -This extension is bundled into the `SQL Server (MSSQL)` extension for VS Code and will be installed automatically when that extension is updated or installed. +## Features -### Azure Data Studio +- Develop database objects using T-SQL +- Store the database schema in source control +- Validate object relationships with project build +- Publish the database objects to a SQL Server or Azure SQL instance +- Publish the database objects to a local development container +- Update the database project from a database -This extension is provided as a separate extension in the marketplace. +### Preview Features + +- Microsoft.Build.Sql SDK-style projects +- Generate SQL projects from OpenAPI/Swagger specs -Please report issues and feature requests [here.](https://github.com/microsoft/azuredatastudio/issues) +![AdventureWorks SQL project](images/readme-sqlproj.png) + ## Getting Started with Database Projects * Create a new database project by going to the `Database Projects` view or by searching `Database Projects: New` in the command palette. * Existing database projects can be opened by going to the `Database Projects` view or by searching `Database Projects: Open existing` in the command palette. -* Start from an existing database by using the `Create Project from Database` from the command palette or database context menu. +* Start from an existing database by using `Create Project from Database` from the command palette or database context menu. * Start from an OpenAPI/Swagger spec by using the `Generate SQL Project from OpenAPI/Swagger spec` command (Preview). +## Settings + +### General Settings +- `sqlDatabaseProjects.dotnetSDK Location`: The path to the folder containing the `dotnet` folder for the .NET SDK. If not set, the extension will attempt to find the .NET SDK on the system. +- `sqlDatabaseProjects.microsoftBuildSqlVersion`: Version of Microsoft.Build.Sql binaries used when building SQL projects that are not SDK-style SQL projects. If not set, the extension will use Microsoft.Build.Sql 0.1.9-preview. +- `sqlDatabaseProjects.netCoreDoNotAsk`: When true, no longer prompts to install .NET SDK when a supported installation is not found. +- `sqlDatabaseProjects.collapseProjectNodes`: Option to set the default state of the project nodes in the database projects view to collapsed. If not set, the extension will default to expanded. + +### AutoRest Settings (preview) + +- `sqlDatabaseProjects.nodejsDoNotAsk`: When true, no longer prompts to install Node.js when a supported installation is not found. +- `sqlDatabaseProjects.autorestSqlVersion`: Version of AutoRest.sql to use for generating SQL projects from OpenAPI/Swagger specs. If not set, the extension will use the latest version. + ## Code of Conduct This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. @@ -34,6 +56,10 @@ This extensions collects telemetry data, which is used to help understand how to To learn more about our Privacy Statement visit [this link](https://go.microsoft.com/fwlink/?LinkID=824704). +## Feedback + +Please report issues and feature requests [here.](https://github.com/microsoft/azuredatastudio/issues) + ## License Copyright (c) Microsoft Corporation. All rights reserved. diff --git a/extensions/sql-database-projects/images/readme-sqlproj.png b/extensions/sql-database-projects/images/readme-sqlproj.png new file mode 100644 index 0000000000..9f69d2db3e Binary files /dev/null and b/extensions/sql-database-projects/images/readme-sqlproj.png differ diff --git a/extensions/sql-database-projects/src/tools/buildHelper.ts b/extensions/sql-database-projects/src/tools/buildHelper.ts index a10cd1a656..ff3934d594 100644 --- a/extensions/sql-database-projects/src/tools/buildHelper.ts +++ b/extensions/sql-database-projects/src/tools/buildHelper.ts @@ -16,7 +16,7 @@ import { ProjectType } from 'mssql'; const buildDirectory = 'BuildDirectory'; const sdkName = 'Microsoft.Build.Sql'; -const microsoftBuildSqlDefaultVersion = '0.1.9-preview'; // default version of Microsoft.Build.Sql nuget to use for building legacy style projects +const microsoftBuildSqlDefaultVersion = '0.1.9-preview'; // default version of Microsoft.Build.Sql nuget to use for building legacy style projects, update in README when updating this const buildFiles: string[] = [ 'Microsoft.Data.SqlClient.dll',