Dave Bost Developer Evangelist http://davebost.com/blog http://twitter.com/davebost
SQL Server Spatial support T-SQL Enhancements Visual Studio integration SQL CLR Reporting Services
SQL Server database development .NET Framework application development Visual Studio 2008 Windows Presentation Foundation ASP.NET Microsoft Virtual Earth OpenGIS
SQL Server 2008 New features Enhancements Programming Demos!
Spatial data represents locations Which properties overlap? Which roads intersect property or each other? How many stores/restaurants/houses/car dealerships are located within a geographical area? Represented by two primary data types Geometry: small areas where curvature of the Earth isn’t so relevant when making calculations Flat Earth model X, Y coordinates Geography: large areas where the curvature of the Earth does matter when making calculations Round Earth model Latitude and longitude coordinates You query for location information as you would any SQL Server data type Data types dictated by the OpenGIS standard Calculations easy to perform (“black box”)
Geospatial data in SQL Server Stored in a proprietary binary format Can be input using simple text Parse methods exist to convert the text into the internal storage format Represents areas using Points Linestrings Polygons MultiPoints MultiLinestrings MultiPolygons GeomCollections Polygonal areas must be defined in counter-clockwise direction Interior areas (“holes”) must be defined in clockwise direction Inherently support various calculations and methods Spatial Reference ID (SRID) identifies ellipsoid used (flat/round, meters/feet) Only instances with like SRID can be directly compared
GEOGRAPHY type has additional requirements Coordinate order is longitude/latitude A single GEOGRAPHY object cannot span more than a logical hemisphere Will throw exceptions if too large
 
Table Value Parameters New Date/Time types Time zone awareness New MERGE keyword New shorthand notation
TVPs are used to insert/update multiple tables at one time Multiple tables can be inserted/updated within a single transaction MARS-like capability for writing ADO.NET updated to include support New parameter type: SqlDbType.Structured
Several new types added datetime2 date time datetimeoffset New functions added CONVERT SYS* Functions DATEDIFF
MERGE allows for insert, update, delete with one keyword Merge two tables, source and target Target table will be modified based on contents of source table Syntax and use can be complex! Be sure to review SQL Server Books Online for more details
Allows you to declare a variable and assign a value in one line of code More like contemporary programming languages, C# or Visual Basic .NET
Allows you to declare a variable and assign a value in one line of code More like contemporary programming languages, C# or Visual Basic .NET
 
Enhanced project types Analysis Services Reporting Services Entity Framework
Essentially an OR/M tool Models relational data using entities Can model any relational data source for data access (provider may be required) Application-specific domain You can work at a higher level of abstraction Appropriate amount of information returned Lazy-loaded What is an entity? Structurally like an object Has scalars and relationships Has identity Represent nouns in your application domain Not tied specifically to SQL Server
 
SQL Server has the ability to execute managed code Stored procedures Functions Aggregates Table value functions User-defined types Triggers Visual Studio can manage both creation and deployment SQL CLR is “off by default” for security reasons Must activate per database to enable Can be remotely debugged With great power comes great responsibility Your code executes in the SQL Server processing stream
Visual Studio provides templates for the various SQL CLR constructs Uses Database project type Simply “add new” like any other item you might add Metadata controls SQL Server behavior Attributes control programmatical type Microsoft.SqlServer.Server.SqlProcedure Microsoft.SqlServer.Server.SqlFunction Microsoft.SqlServer.Server.SqlUserDefinedAggregate Microsoft.SqlServer.Server.SqlTrigger Microsoft.SqlServer.Server.SqlUserDefinedType You write your logic using a .NET-supported language You work with other objects in the Microsoft.SqlServer.Server namespace to retrieve and return data Very ADO.NET-like, but not ADO.NET Can be assigned security levels Safe, External, Unsafe
 
SQL Server standard for reporting Managed enterprise reporting Ad-hoc reporting Embedded reporting Web-based reporting Reports can be formatted in a variety of ways PDF Word 2007 HTML Reports are exposed via a Web Service Can be integrated with SharePoint Dependency on IIS removed (uses http.sys) Strong designer and wizard support in Visual Studio Enhanced configuration and administration tool
Design reports in Visual Studio 2008 SP1 Query for data Assign query results to report Design report style Colors Fonts Deploy report Web Service SharePoint Services Wizard available for initial report design
 
Visit MSDN at   msdn.microsoft.com Visit the url below for additional information http://msdn.microsoft.com/sql http://www.codeplex.com/SQLServerSamples http://www.codeplex.com/MSFTDBProdSamples
Are you ready to take your career as a developer to the next level? Looking for a learning experience that is designed for you? Join MSDN  Ramp Up  and Summit Your Career! MSDN  Ramp Up  is your online source that provides free training and technical resources to help take your development skills to the next level. Step-by-Step training plans to build your development skills. Premium technical content created by expert developers for developers. Access to valuable online e-learning, e-references, and virtual labs.  50% discount on select certification exams and 30% discount on Microsoft Press training kits. Join Ramp Up for free today! Go to:   http://msdn.microsoft.com/rampup
http://thirstydeveloper.com “ Looking at someone’s code, but with audio”
The nature of software development is radically changing ... ARE YOU READY? Prepare yourself for a demanding future. Attend the MSDN Developer Conference. Experience Microsoft’s Cloud Computing Platform  Be among the first to see Windows 7 Take your .NET skills to the next level The Cost? Just $99 To register, check out  www.MSDNDevCon.com  RSVP Code: MDCDEV Houston 12/9/08  Orlando 12/11/08  Atlanta 12/16/08  Chicago 1/13/09  Minneapolis 1/13/09  Washington, DC 1/16/09  New York 1/20/09  Boston 1/22/09  Detroit 1/22/09  Dallas 1/26/09  San Francisco 2/19/09 ONILNE: Find our tag under #MSDNDevCon at Facebook, Twitter, Flickr, Delicious and Twemes
Dave Bost thank you! http://davebost.com/blog http://twitter.com/davebost http://thirstydeveloper.com
http://thirstydeveloper.com “ Looking at someone’s code, but with audio”
© 2007 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.

Building Applications for SQL Server 2008

  • 1.
    Dave Bost DeveloperEvangelist http://davebost.com/blog http://twitter.com/davebost
  • 2.
    SQL Server Spatialsupport T-SQL Enhancements Visual Studio integration SQL CLR Reporting Services
  • 3.
    SQL Server databasedevelopment .NET Framework application development Visual Studio 2008 Windows Presentation Foundation ASP.NET Microsoft Virtual Earth OpenGIS
  • 4.
    SQL Server 2008New features Enhancements Programming Demos!
  • 5.
    Spatial data representslocations Which properties overlap? Which roads intersect property or each other? How many stores/restaurants/houses/car dealerships are located within a geographical area? Represented by two primary data types Geometry: small areas where curvature of the Earth isn’t so relevant when making calculations Flat Earth model X, Y coordinates Geography: large areas where the curvature of the Earth does matter when making calculations Round Earth model Latitude and longitude coordinates You query for location information as you would any SQL Server data type Data types dictated by the OpenGIS standard Calculations easy to perform (“black box”)
  • 6.
    Geospatial data inSQL Server Stored in a proprietary binary format Can be input using simple text Parse methods exist to convert the text into the internal storage format Represents areas using Points Linestrings Polygons MultiPoints MultiLinestrings MultiPolygons GeomCollections Polygonal areas must be defined in counter-clockwise direction Interior areas (“holes”) must be defined in clockwise direction Inherently support various calculations and methods Spatial Reference ID (SRID) identifies ellipsoid used (flat/round, meters/feet) Only instances with like SRID can be directly compared
  • 7.
    GEOGRAPHY type hasadditional requirements Coordinate order is longitude/latitude A single GEOGRAPHY object cannot span more than a logical hemisphere Will throw exceptions if too large
  • 8.
  • 9.
    Table Value ParametersNew Date/Time types Time zone awareness New MERGE keyword New shorthand notation
  • 10.
    TVPs are usedto insert/update multiple tables at one time Multiple tables can be inserted/updated within a single transaction MARS-like capability for writing ADO.NET updated to include support New parameter type: SqlDbType.Structured
  • 11.
    Several new typesadded datetime2 date time datetimeoffset New functions added CONVERT SYS* Functions DATEDIFF
  • 12.
    MERGE allows forinsert, update, delete with one keyword Merge two tables, source and target Target table will be modified based on contents of source table Syntax and use can be complex! Be sure to review SQL Server Books Online for more details
  • 13.
    Allows you todeclare a variable and assign a value in one line of code More like contemporary programming languages, C# or Visual Basic .NET
  • 14.
    Allows you todeclare a variable and assign a value in one line of code More like contemporary programming languages, C# or Visual Basic .NET
  • 15.
  • 16.
    Enhanced project typesAnalysis Services Reporting Services Entity Framework
  • 17.
    Essentially an OR/Mtool Models relational data using entities Can model any relational data source for data access (provider may be required) Application-specific domain You can work at a higher level of abstraction Appropriate amount of information returned Lazy-loaded What is an entity? Structurally like an object Has scalars and relationships Has identity Represent nouns in your application domain Not tied specifically to SQL Server
  • 18.
  • 19.
    SQL Server hasthe ability to execute managed code Stored procedures Functions Aggregates Table value functions User-defined types Triggers Visual Studio can manage both creation and deployment SQL CLR is “off by default” for security reasons Must activate per database to enable Can be remotely debugged With great power comes great responsibility Your code executes in the SQL Server processing stream
  • 20.
    Visual Studio providestemplates for the various SQL CLR constructs Uses Database project type Simply “add new” like any other item you might add Metadata controls SQL Server behavior Attributes control programmatical type Microsoft.SqlServer.Server.SqlProcedure Microsoft.SqlServer.Server.SqlFunction Microsoft.SqlServer.Server.SqlUserDefinedAggregate Microsoft.SqlServer.Server.SqlTrigger Microsoft.SqlServer.Server.SqlUserDefinedType You write your logic using a .NET-supported language You work with other objects in the Microsoft.SqlServer.Server namespace to retrieve and return data Very ADO.NET-like, but not ADO.NET Can be assigned security levels Safe, External, Unsafe
  • 21.
  • 22.
    SQL Server standardfor reporting Managed enterprise reporting Ad-hoc reporting Embedded reporting Web-based reporting Reports can be formatted in a variety of ways PDF Word 2007 HTML Reports are exposed via a Web Service Can be integrated with SharePoint Dependency on IIS removed (uses http.sys) Strong designer and wizard support in Visual Studio Enhanced configuration and administration tool
  • 23.
    Design reports inVisual Studio 2008 SP1 Query for data Assign query results to report Design report style Colors Fonts Deploy report Web Service SharePoint Services Wizard available for initial report design
  • 24.
  • 25.
    Visit MSDN at msdn.microsoft.com Visit the url below for additional information http://msdn.microsoft.com/sql http://www.codeplex.com/SQLServerSamples http://www.codeplex.com/MSFTDBProdSamples
  • 26.
    Are you readyto take your career as a developer to the next level? Looking for a learning experience that is designed for you? Join MSDN Ramp Up and Summit Your Career! MSDN Ramp Up is your online source that provides free training and technical resources to help take your development skills to the next level. Step-by-Step training plans to build your development skills. Premium technical content created by expert developers for developers. Access to valuable online e-learning, e-references, and virtual labs. 50% discount on select certification exams and 30% discount on Microsoft Press training kits. Join Ramp Up for free today! Go to: http://msdn.microsoft.com/rampup
  • 27.
    http://thirstydeveloper.com “ Lookingat someone’s code, but with audio”
  • 28.
    The nature ofsoftware development is radically changing ... ARE YOU READY? Prepare yourself for a demanding future. Attend the MSDN Developer Conference. Experience Microsoft’s Cloud Computing Platform Be among the first to see Windows 7 Take your .NET skills to the next level The Cost? Just $99 To register, check out www.MSDNDevCon.com RSVP Code: MDCDEV Houston 12/9/08 Orlando 12/11/08 Atlanta 12/16/08 Chicago 1/13/09 Minneapolis 1/13/09 Washington, DC 1/16/09 New York 1/20/09 Boston 1/22/09 Detroit 1/22/09 Dallas 1/26/09 San Francisco 2/19/09 ONILNE: Find our tag under #MSDNDevCon at Facebook, Twitter, Flickr, Delicious and Twemes
  • 29.
    Dave Bost thankyou! http://davebost.com/blog http://twitter.com/davebost http://thirstydeveloper.com
  • 30.
    http://thirstydeveloper.com “ Lookingat someone’s code, but with audio”
  • 31.
    © 2007 MicrosoftCorporation. 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.