* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download DAT312 - Managing and Deploying Your SQL Server Schemas with
Survey
Document related concepts
Serializability wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Functional Database Model wikipedia , lookup
Oracle Database wikipedia , lookup
Microsoft Access wikipedia , lookup
Ingres (database) wikipedia , lookup
Concurrency control wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Relational model wikipedia , lookup
Database model wikipedia , lookup
Versant Object Database wikipedia , lookup
Transcript
DAT312 Managing and Deploying your SQL Server schemas with Visual Studio Team Edition for Database Professionals Mairead A. O’Donovan Richard Waymire Program Manager PM Architect Microsoft Corporation Microsoft Corporation Agenda Overview of Team System for Database Professionals (TSDATA) Database Projects Source Control Integration Schema Compare Build and Deploy Overview of Team System for Database Professionals Visual Studio Team System New! Visual Studio Team Suite MSF Process and Guidance Visual Studio Team Explorer Software Architects Software Developers Software Testers Database Professionals Application Modeling Code Analysis Performance Testing Infrastructure and Deployment Modeling Performance Tuning Manual Testing Database Change Management Database Testing Test Case Management Database Deployment Security Analysis Unit Testing Code Coverage Class Modeling Visio and UML Modeling Visual Studio Professional Edition Load Test Agent Visual Studio Team Foundation Server Change Management Reporting Integration Services Work Item Tracking Project Site Project Management Visual Studio Industry Partners Product Overview Database Project System Schema and Script Versioning (SCC Integration) Schema Build & Deploy Schema Compare Data Compare Database Unit Testing (Test) Data Generator Schema Refactoring T-SQL Editor with Query Execution Work Item and Process Integration with TFS Database Development Life Cycle The cycle of life for database developers SQL Server Database Database Project Template SQL Script Import database schema Create New Project Database Project Reverse engineer existing .SQL script files (*) (*) Not implemented in the current CTP Database Development Life Cycle The cycle of life for database developers Edit Refactor Compare Deploy Database Project Data Generation Test Compare Build Database Development Life Cycle The cycle of life for database developers SQL Server Database Database Project Template SQL Script Import database schema Deploy SQL Script Build project Create New Project Database Project Deploy project Reverse engineer existing .SQL script files (*) (*) Not implemented in the current CTP SQL Server Database Project Model The center of gravity The database project represents the “truth” with regards to schema versioning Optionally database project can be placed under source control .SQL script files is the canonical format used Changes are tracked at the “object level” For example indexes, constraints, triggers are tracked independent of the base table definition, in order have the highest granularity of change tracking Other Sessions Introducing Visual Studio Team Edition for Database Professionals DEV217 - 6/13/2006 10:15AM - 11:30AM, room: 104 ABC Managing and Deploying your SQL Server Schemas with Visual Studio Team Edition for Database Professionals DAT312 - 6/13/2006 1:00PM - 2:15PM, room: 156 ABC Testing & Refactoring your Database with Visual Studio Team Edition for Database Professionals DAT320 - 6/14/2006 8:30AM - 9:45AM, room: 160 ABC Under the Hood of Visual Studio Team Edition for Database Professionals DAT433 - 6/15/2006 1:00PM - 2:15PM, room: 160 ABC DATABASE PROJECTS Database Projects Defined “Schema” projects SQL Server 2000 SQL Server 2005 “Script Only” projects SQL Server 2000 SQL Server 2005 Different types to support different syntax/language options A project is simply a series of files collected together into a single logical collection The files represent the truth of your schema Schema Projects Support three areas: Data Generation Plans Schema Objects Scripts Data Generation will be covered fully in talk DAT320 Schema Objects The “Meat and potatoes” of the project system All SQL Server objects are reflected here All objects within user databases, that is And that are user-created objects (no system objects) Schema folders reflect the product version So “Service Broker” objects only show up in the SQL Server 2005 project type Table and View are containers for child objects Indexes, Triggers, Constraints, Statistics, Full-text Goal is to be as compatible as possible with SQL Server Management Studio Object Explorer view We use the same icons, folder view when possible Templates For each type of object you can have in the project system, we have a version-specific template to create that object Wherever possible, the template will generate valid SQL But probably not the SQL you want They give you a starting point to write your SQL statements Error States Any given project item (file) can have three error states: Clean You just see the expected icon for the object Dirty You get a red exclamation point superimposed on the icon for the object This means the script/DDL wasn’t understood by us, or The syntax is wrong Not fully interpreted/implemented yet You get a yellow warning triangle superimposed on the icon for the object This means we’re not done yet understanding some SQL code in the object So you shouldn’t see this when we release You can’t refactor over the object in this file But, it will build/deploy correctly Errors and warnings show up in the Error List Scripts The Scripts folder contains two children folder by default: PreDeployment PostDeployment Each contains a single script (for now) that will be either pre-pended or post-pended during project build More on that later… You can also insert any folder or .SQL script file into this area Import Database Schema Also sometimes referred to as reverse engineer Imports an existing database schema into a database project For CTP3 it only supports importing into an empty SQL Server 2000 project We use the schema compare engine under the covers to generate the script Then submit the script one piece at a time as if you’d typed them in yourself We then turn each object into a separate file in your project Project Properties Project properties set a variety of information about a given database project Project Version Eventually you’ll be able to “upgrade” a project from SQL Server 2000 to SQL Server 2005 Default Schema When a new object is created, what schema does it go into by default Is FullText Indexing enabled Off for CTP3 Default Collation What collation should be assumed as default for all schema objects Import Existing Schema will reset this to whatever the collation was on the source database Build Properties will be discussed later… SOURCE CONTROL INTEGRATION Source Control Integration Full Integration with Visual Studio SCC Interfaces Support out of the box for Team Foundation Server, Visual SourceSafe However, any SCCI compliant source system should work Standard Graphical Interface If you work with VB/C# projects and source control, we’ll behave the same Same icons on project items Same top level/context menu items The Project System, Import Database Schema, and Source Control Integration Mairead A. O’Donovan Program Manager Database Development Life Cycle The cycle of life for database developers Edit Refactor Compare Deploy Database Project Data Generation Test Compare Build Schema Compare Schema Compare What is Schema Compare? Allows quick comparisons of: project -> database database -> database GUI interface and/or SQL scripts to compare diffs Full SQL Server 2000 and SQL Server 2005 support Object level script differences between databases Handles Data Motion Schema Compare (cont) Options for restricting/changing script Restrict which object types are compared Compare while ignoring schema, filegroups, etc. Enables comparison of test to production Turn off dependency checking Generate backwards compatible scripts i.e. script a 2005 database with a 2000 script Compare security settings Users, roles, and permissions Building and Deploying Database Projects Build/Deploy Standard MSBuild task Configurations New vs. Existing builds Project properties for build Schema compare used for build Pre/Post Deployment scripts Build results in .SQL script file Deploy Deploy via SQL query tool Deploy via MSBuild task FUTURE: SQLCMD command support Schema Compare, Build and Deploy Database Project Mairead A. O’Donovan Program Manager Database Development Life Cycle The cycle of life for database developers Edit Refactor Compare Deploy Database Project Data Generation Test Compare Build Wrap Up Database Projects will change the way developers and DBAs work and think about change management in SQL Server Go get the CTP and try it out on your databases Report feedback (good & bad) Further Questions: Richard: [email protected] Mairead: [email protected] Other Sessions Testing & Refactoring your Database with Visual Studio Team Edition for Database Professionals DAT320 - 6/14/2006 8:30AM - 9:45AM, room: 160 ABC Under the Hood of Visual Studio Team Edition for Database Professionals DAT433 - 6/15/2006 1:00PM - 2:15PM, room: 160 ABC Resources Technical Chats and Webcasts http://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/usa/webcasts/default.asp Microsoft Learning and Certification http://www.microsoft.com/learning/default.mspx MSDN & TechNet http://microsoft.com/msdn http://microsoft.com/technet Virtual Labs http://www.microsoft.com/technet/traincert/virtuallab/rms.mspx Newsgroups http://communities2.microsoft.com/ communities/newsgroups/en-us/default.aspx Technical Community Sites http://www.microsoft.com/communities/default.mspx User Groups http://www.microsoft.com/communities/usergroups/default.mspx Visual Studio Team System Breakout Sessions DEV304 - Delving into Visual Studio 2005 Team Edition for Software Architects 6/12/2006 10:45AM-12:00PM 160ABC DEV307 - Delving into Visual Studio 2005 Team Edition for Software Developers 6/12/2006 1:30PM-2:45PM Grand Ballroom A DEV311 - Delving into Visual Studio 2005 Team Edition for Software Testers 6/12/2006 5:00PM-6:15PM 104 ABC DEV217 - Introducing Visual Studio 2005 Team Edition for Database Professionals 6/13/2006 10:15AM-11:30AM 104 ABC DAT312 - Managing and Deploying Your SQL Server Schemas with Visual Studio Team Edition for Database Professionals 6/13/2006 1:00PM-2:15PM 156 ABC DAT320 - Testing and Refactoring Your Database with Visual Studio Team Edition for Database Professionals 6/14/2006 8:30AM-9:45AM 160 ABC DEV327 - Visual Studio 2005 Team Foundation Server (Part 1): Applying Version Control, Work Item Tracking and Team Build to Your Software Development Project 6/14/2006 10:15AM-11:30AM 160 ABC DEV429 - Visual Studio 2005 Team Foundation Server (Part 2): Developing Custom Process Templates, Work Item Types and Policies 6/14/2006 2:00PM-3:15PM 160 ABC DEV233 - Visual Studio 2005 Team Foundation Server: Using Metrics to Manage and Troubleshoot Your Projects 6/14/2006 5:30PM-6:45PM 153 ABC DEV237 - Visual Studio 2005 Team Foundation Server: Step-by-Step Migration and Adoption Planning 6/15/2006 9:45AM-11:00AM 104 ABC DEV439- Visual Studio 2005 Team System and Microsoft Solution Framework: Implementing an Agile or CMMI Process 6/15/2006 1:00PM-2:15PM 156 ABC DAT433 Under the Hood of Visual Studio Team Edition for Database Professionals 6/15/2006 1:00PM-2:15PM 160 ABC Visual Studio Team System HOL / TCL Hands on Labs DEV005 Streamlining your Development Process with Visual Studio 2005 Team System DEV008 Take a Tour of Visual Studio 2005 Team System for Database Professionals Chalktalks Building Quality In: Visual Studio Team System and Continuous Integrated Testing DEV TLC Theatre 6/14/2006 8:30AM-9:45AM Teamlook and TeamSpec in Context Modeling that Supports Visual Studio 2005 DEV TLC Theatre 6/14/2006 5:30PM-6:45PM Modeling that Supports Visual Studio 2005 DEV TLC Theatre 6/14/2006 5:30PM-6:45PM Visual Studio Team Edition for Database Professionals: Overview DEV TLC Theatre 6/15/2006 9:45AM-11:00AM Code Generation and Model Execution from DSL Tools DEV TLC Theatre 6/15/2006 2:45PM-4:00PM Fill out a session evaluation on CommNet for a chance to Win an XBOX 360! © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.