Trinidad and Tobago SQL Server User Group (TTSSUG)

I will like to thank everyone that attended the Pre-Launch event on the 12th May 2010. Special thanks as well to Microsoft Trinidad and Tobago for sponsoring this event. Since I know it was difficult for some people to attend, I decided to highlight some of the information that was presented.

The Trinidad and Tobago SQL Server User Group is a volunteer and independent organization providing a community for Microsoft SQL Server professionals, hobbyists and enthusiasts.

Mission and goals:
1. To develop a network of professionals with a common interest in Microsoft SQL Server.
2. To promote free and open communication among users of Microsoft SQL Server and related software products.
3. To establish channels for the education of TTSSUG members and the communication of Microsoft SQL Server related information to and from the members.

The group is an official local Chapter of the Professional Association of SQL Server (PASS).

What is PASS:
The Professional Association for SQL Server (PASS) is an independent, not-for-profit association, dedicated to supporting, educating, and promoting the Microsoft SQL Server community. From local user groups and special interest groups (Virtual Chapters) to webcasts and the annual PASS Community Summit – the largest gathering of SQL Server professionals in the world – PASS is dedicated to helping its members Connect, Share, and Learn.

PASS Mission:
Empower the global Microsoft SQL Server and Business Intelligence community to connect, share, learn and be inspired through networking, knowledge sharing, peer-based learning, and the ability to influence the direction of Microsoft SQL Server data platform.

PASS chapters exist to help facilitate education and a knowledge exchange among developers, architects, DBAs, users and managers with an interest in Microsoft SQL Server technologies.

For more information please view this PDF.

Even though this group is an official PASS chapter it is still very new and there are many things that need to be completed before it our first event. We are currently working on bylaws so that we can begin registering members and a mailing list will be available soon to communicate with people interested in future events.

If you have any questions or who are interested in information of future events, please email me: nigelpsammy@live.com.
Continue Reading →

Pre-Launch of Trinidad and Tobago SQL Server User Group

Microsoft Trinidad and Tobago is hosting an After Work Lime to pre-launch the Trinidad and Tobago SQL Server User Group. You are invited to come and learn more about the goals of the chapter and see how you can make history by becoming the first members in Trinidad. There will be light snacks and refreshments available. I look forward to your participation.


Date: Wednesday 12th May, 2010
Time: 4pm – 6:30pm
Target Audience: DBA, Database Developers, SQL Server Hobbyists and Enthusiasts
Location: Microsoft, West Moorings
Cost: Free*

* Limited seats are available so please register early.


To register for this event contact:
Mr. Nigel Sammy
Email: nigelpsammy@live.com
Continue Reading →

Microsoft SQL Server 2008 R2

In a few days Microsoft will be releasing the latest iteration of its data platform, SQL Server 2008 R2. R2 will provide customers with a trusted and scalable platform that can increase IT and developer efficiency and deliver expanded reporting and analytics through self-service business intelligence. SQL Server 2008 R2 also introduces two new premium editions; Microsoft SQL Server 2008 R2 Datacenter and Microsoft SQL Server 2008 R2 Parallel Data Warehouse (formerly codenamed “Madison”).

Some of the new features of R2 are:
· PowerPivot (formerly codenamed "Gemini")
    PowerPivot gives the users the power to create and manage self-service business intelligence solutions.
        - PowerPivot for SharePoint adds shared services and infrastructure for loading, querying, and managing PowerPivot workbooks that you publish to a SharePoint 2010 server or farm.
        - PowerPivot for Excel can be used to assemble and create relationships with data from various sources, and then use that data as the basis for PivotTables and other data visualization objects that           support data analysis in Excel.
· Data -Tier Applications
    A data-tier application (DAC) forms a single unit which contains the database schema and some server level objects required by the database in order to support an application. This simplifies the     development, deployment, and management of the data-tier objects that support a multi-tier or client-server application
· Application and Multi-Server Administration
    SQL Server 2008 R2 introduces the SQL Server Utility, which forms a central repository for centralized management and consolidation of data-tier applications and instances of SQL Server that have     been enrolled in the utility.
· StreamInsight
    This technology deals with complex high-scale event processing. It allows the monitoring and analyzing of data in motion that may be difficult to store for analysis due to its size and frequency.
· Master Data Services
    This allows organizations to securely manage master data and maintain an auditable record of the data as it changes over time thus ensuring the integrity of the data.


SQL Server 2008 R2 also has some Database Engine and Reporting Services enhancements that increase the power and productivity of architects, developers, and administrators. It is important to remember that R2 is a minor version upgrade of SQL Server 2008, so new and enhanced features in SQL Server 2008 will still be available in R2. Customers with Software Assurance (SA) for their SQL Server 2008 license can upgrade to SQL Server 2008 R2 for free. People without SA will have to decide if the features in R2 will be worth the cost of upgrading.

For more information on R2 see the following links:
MSDN: SQL Server 2008 R2
SQL Server 2008 R2

Continue Reading →

Microsoft Boot Camp 2010: Business Intelligence Summary

I was given the opportunity to be the speaker for the Business Intelligence (BI) presentation at the Microsoft Boot Camp 2010 which occurred on February 25th 2010. Just like in Microsoft Boot Camp 2009, the number of attendees was larger than I expected but presenting for the event was still fun and exciting.

I began the presentation with some information about myself and my employer Teleios Systems and then proceeded with an introduction to SQL Server 2008. This was then followed by a brief discussion about 'What is Business Intelligence' and a video of A.C. Milan: Milan Lab. The discussion highlighted where SQL Server 2008 lives in Microsoft's BI world and introduced the SQL Server BI stack: Integration Services (SSIS), Analysis Services (SSAS) and Reporting Services (SSRS). I briefly described each product (SSIS, SSRS and SSAS) and also highlighted SQL Server 2008 Data Warehousing enhancements before performing a SSIS demonstration. With the upcoming release of SQL Server 2008 R2, I decided to explained 'Managed Self Service BI' and ended the presentation with a PowerPivot demonstration using SQL Server 2008 R2 CTP and Excel 2010. Due to some time constraints I was unable to highlight some of the local BI work done by Reeza Ali, a Solutions Architect with Microsoft Consulting Services West Indies. He has recently published a series of videos on Designing and Planning a BI Project in the internationally recognized and very popular Architect journal.

The feedback that I received from a few people at the end of the event were very positive. They found the presentations very informative and were impressed with the products that was shown in the sessions.

For more information about Microsoft Business Intelligence please visit www.microsoft.com/BI.
Continue Reading →

SQL Server 2008: R2 and Business Intelligence Presentations

Microsoft Trinidad and Tobago is having another Tech Boot Camp on February 25th 2010. The two SQL Server 2008 sessions are: What's Coming with SQL Server 2008 R2 (Track 3) and Business Intelligence for Trinidad and Tobago (Track 4). The Boot Camp offers information for ITpros and Developers so anyone interested can use the information from the invite below in order to register. Missing from the invite is Track 6 : Cloud Computing with Microsoft.

Continue Reading →

Security: Authorization

This shall be my last blog post for the year 2009 and what better to end security month than the actual post that started the security month idea. Before continuing, I suggest reading the previous security posts this month: Understanding Server Security Principals, Introducing Database Users and Roles and Schemas.
Two years ago I read an interesting white paper : SQL Server 2005 Security Best Practices - Operational and Administrative Tasks. The paper highlighted the definition of authorization as the process of granting permissions on securables and also stated that a best practice for authorization is to encapsulate access through modules (e.g. stored procedures, functions). This paper prompted the idea of allowing application users to only access or modify some database objects (e.g. tables) via procedural code. For example, if user 'Dave' needs to update the Customer table then a stored procedure to update the table can be created and he can be given EXECUTE access to that procedure rather than granting him UPDATE access to the Customers table.
While this is a great method for a DBA to secure the instance lets consider a scenario where a database has more than a hundred stored procedures and due to upgrades it is possible that new stored procedures will be added, how will you give a user EXECUTE access to each stored procedure? It is not feasible to grant access to each stored procedure one by one and remembering to grant access to each new one when they are created is troublesome. The answer to the question is schemas. Once all objects are part of the same schema then it just a matter of granting permissions at the schema level in order for a user to have permissions to all current objects and any new objects created in the schema. So in the scenario presented earlier, if the stored procedures are part of the dbo schema then the user has to be granted EXECUTE permission on the dbo schema and then the user will be able to execute all current procedures and any new stored procedures created in the dbo schema.

The syntax to grant permission on a schema is:
GRANT [Permission] ON SCHEMA::[schema_name] TO [Database User/Role]

e.g. GRANT EXECUTE ON SCHEMA::dbo to Dave

If the database user didn’t exist then use the following syntax to create a database user with a default schema :
CREATE USER [Username] FOR LOGIN [login_name] WITH DEFAULT_SCHEMA=[schema_name] 

e.g.
CREATE USER Appuser FOR LOGIN Dave WITH DEFAULT_SCHEMA=work
GRANT EXECUTE ON SCHEMA:: work TO Appuser
Continue Reading →

Security: Schemas

In the database world, the word 'Schema' is associated with the description of the tables and the relations in the database. However when Microsoft launched SQL Server 2005, they introduced a securable called Schema which created another meaning for the word 'Schema' in the database world. A Schema is a container of database objects (e.g. tables, views, stored procedures etc) and it is used to define the namespace for the objects. It is used to make management of objects easier for a database users. Schemas and users are separate entities and a schema can be owned by any user or database role.

In previous versions of SQL Server prior to SQL Server 2005, the four-part name for database objects included the owner name where as SQL Server 2005 and 2008 has schema name replacing owner name in the naming scheme.

Scenario 1 - SQL Server 2000
     A user named Fred created objects in the 'Product' database. Each object has the following four-part name :
          [Server Name]. Product.Fred.[Object Name]
Scenario 2 - SQL Server 2005
     Objects need to be part of a schema and since Fred does not want to use the 'dbo' schema he created a schema called 'work'. Each object has the following four-part name :
          [Server Name]. Product.work.[Object Name]

This is beneficial since changing user names or removing users does not require manually transferring each object the user owned to another user. In Scenario 1,if the Fred user is deleted then no one will be able to access any of the objects that he created unless each object is transferred to another user. However in scenario 2, the user Fred can be deleted once the ownership of the schema is transferred to a next user.

A default schema is assigned to each database user for each database that the user can access. This allows users to access objects in the default schema without having to specify the schema name. For example, Fred who has a default schema of 'work' can select data from the table work.Company by specifying Customer in his query instead of work.Company. If you need to access another schema, a two-part identifier (schema_name.object_name) will be required.

Syntax to create a schema:
     CREATE SCHEMA [schema_name] AUTHORIZATION [owner_name]
     e.g. CREATE SCHEMA work AUTHORIZATION Fred

The ALTER SCHEMA is used to transfer a securable between schemas. Syntax:
     ALTER SCHEMA [schema_name] TRANSFER [securable_name]
     e.g. ALTER SCHEMA work TRANSFER dbo.customers
     Note: the securable_name can be one-part or two-part named

Syntax to remove a schema:
     DROP SCHEMA [schema_name]
Continue Reading →

Community Links