About a belle
Who am I?
– Donabel Santos
– SQL Server MVP
– Senior SQL Server Developer/DBA/Trainer at QueryWorks Solutions
– Instructor at British Columbia Institute of Technology (BCIT) School of Computing and Academic Studies. Currently teaching database courses – SQL Server Administration/Development/Business Intelligence, MySQL. Used to teach Web Development courses too, and created materials for SharePoint End Users and SharePoint Designer courses.
– SQL Server Business Intelligence Analyst/Developer at the University of British Columbia (UBC)
– MySQL Core, MySQL Professional
– MCP, MCTS, MCITP-Developer, MCITP-DBA, Microsoft Certified Trainer (MCT)
– How did I get here? Here’s the three things that got me here.
I enjoy working a lot with SQL Server. I’ve been working with SQL Server since SQL Server 2000. I’ve worn many different hats – trainer (been teaching/training since 2003!), developer (design, scripts, stored procedures, functions, tuning, troubleshooting, SQLCLR, SQLXML, integration with ERPs, CRMs and PowerShell), DBA (installing, configuring, tuning, maintenance, transaction log shipping, replication, database mirroring, partitioning etc), BI developer (SSRS, SSIS, ETL, SSAS, OLAP, Cubes, MDX) – but one thing remains. I still find working with SQL Server a lot of fun.
Besides SQL Server, I also – in previous positions – have worked extensively with SharePoint (installing, configuring, creating custom pages, branding, web parts, features, workflows) and general web development (HTML/CSS/jQuery/C#/ASP.NET/XML).
I’m a proud member of PASS (Professional Association of SQL Server). I blog (sqlmusings.com), tweet (@sqlbelle), speak (VANPASS, SQLSaturday, etc), train (BCIT, QueryWorks Solutions) and write (Idera, SSWUG, etc).
Contact me
Here is my shameless plug. If you need any SQL Server help, don’t hesitate to ask. Call me, email me, post a comment in my blog. Don’t worry, I don’t bite. Contact details at the QueryWorks Contact Page (or you can send me an email at donabel dot santos at queryworks dot ca.
What is this blog for?
This blog contains some of the things I learn about SQL Server, some of the gotchas that got me, and some of the gotchas I escaped from thanks to other people’s blogs, articles and what nots.
These are my own discoveries as I work with SQL Server. Everyday, I learn a new thing or two about SQL Server. I learn a lot from colleagues, students, and other books and blogs. I am using this blog as a medium to retain a little fraction of this learning, and to share it in case it’s useful to someone else.
Geeky as it sounds, I *really* love working with SQL Server and I *really* love teaching SQL Server. I am excited to learn more about this product, be it development, reporting, administration, SQL on the cloud, SQL clustering – the sky is the limit.
I used to be the resident SQL Ninja at Black Ninja Software. Black Ninja Software is a forward thinking, proactive SharePoint/ASP.NET/SQL Server consulting company in Vancouver, British Columbia.
As a SQL Ninja, I worked on the SQL projects for clients – remote administration, configuration, reporting, optimization, profiling, and a whole lot of querying. I also did corporate SQL Server training. At Black Ninja, I work with some of the coolest, smartest people around town.
In another previous job, I worked as a DBA for one of the biggest advertising companies in Canada (for their real estate and automotive vertical). I also used to work a lot with MySQL and SharePoint (both WSS and MOSS), so you will find tidbits about MySQL and SharePoint in this blog. I used to actively blog about SharePoint in sharepointmusings and have been involved in administration, customization (branding, web parts, features, BDC, SSRS integration) of SharePoint projects.
SQL Server Connection
Did I mention yet that I *love* working with SQL Server?
My experience in SQL Server 2000/2005/2008/R2 includes:
– SSRS, SSIS, SSAS
– PowerShell
– code, code, code, including user defined functions (UDFs), Stored Procedures, Triggers, SQLXML, SQLCLR
– general administration
– security and user/permission management
– backup/restore
– general troubleshooting, tuning, profiling
– high availability strategies (log shipping, database mirroring, replication)
– playing with 2008 new shiny things (policy based management, resource governor, Change Tracking, Change Data Capture, SQL Audit, Management Data Warehouse)
– query optimization, indexes
– integration with SharePoint
– training/mentoring/teaching
My previous positions include:
– SQL Server Developer/DBA/Ninja at Black Ninja Software in Vancouver, British Columbia
– SQL Server Developer/DBA (database administrator)
– SharePoint/SQL Server/C# developer/consultant
– MySQL/PHP/Perl developer
– Linux sys admin
– Web developer (HTML/XHTML/CSS/Javascript/XSL)
Previous Talks/Speaking Engagements:
I also like sharing what I learn either in classroom lectures, or speaking engagements within the development community.
Check out my past presentations and materials at http://www.sqlmusings.com/presentations-and-webcasts/
Additional Stuff About Me:
belle’s BCIT Profile 1 2
belle’s SharePointMusings
belle’s LinkedIn
Certifications
Microsoft Certified Trainer (MCT)
Microsoft Certified Information Technology Professrional (MCITP) – DBA, Developer
Microsoft Certified Technology Specialist (MCTS)
Microsoft Certified Professional (MCP)
*Postings in this blog are provided “AS IS” with no warranties
*avatar by faceyourmanga (http://www.faceyourmanga.com)
August 20th, 2015 by belle
This is an expansion (and slight variation) of Joe’s answer in StackOverflow regarding the thread Find the maximum consecutive years for each ID’s in a table (Oracle SQL) using SQL Server. I’ve tested this in SQL Server 2014, but should work from SQL Server 2005 onwards where the ranking functions are supported.
The problem Joe solved is not uncommon – i.e. how to get the consecutive years of something (consecutive year sales, consecutive years in school, consecutive years volunteering etc), and his solution is pretty clever.
Let’s assume you are working on a sales database. You have multiple clients who could be purchasing from your store several times a year, or a couple of times every five years. You may want to know what’s the maximum consecutive years they’ve purchased from you. Why? Perhaps in a marketing campaign, you may want to give your loyal customers (purchased in 5 or more consecutive years) a special discount.
Your data may look like the following screenshot. Notice that in this example, Client 00001, 00002 and 00003 purchased only once. Client 00004 purchased several times, and it looks like there were purchases in consecutive years.
See full article here at sqlbelle.com
VN:F [1.9.22_1171]
Rating: 9.3/10 (3 votes cast)
VN:F [1.9.22_1171]
About a belle, 8.0 out of 10 based on 10 ratings
Posted in SQLXML, T-SQL Tips and Tricks, Teaching, Tutorials | Comments
August 19th, 2015 by belle
This is my fuel. This is why I teach. Sure, I won’t please everyone. Not everyone will appreciate or will be happy with the way I teach, but even if there’s one person in the class who thinks the time they spent in my class was worth it – that’s all the reason I need.
(All names removed from cards below)
See full blog post at sqlbelle.com
VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
About a belle, 8.0 out of 10 based on 10 ratings
Posted in musings, Teaching | Comments
August 17th, 2015 by belle
This blog post is tested on SQL Server 2014 and PowerShell V5.
PowerShell has become more feature-rich in every version. We are now looking at PowerShell V5 (currently can be downloaded as part of Windows Management Framework v5 April 2015 Preview).
The support landscape with SQL Server hasn’t changed much. There isn’t a drastic increase in SQL Server cmdlets. However, the language and feature improvements in PowerShell in general improve how we can work with SQL Server.
One area where we can use PowerShell is with SQL Server Reporting Services (SSRS). I blogged about this a while back, but it’s time to revisit and expand on how we can use PowerShell to automate report generation.
In this blog post I will focus on generating PDF reports via scripting. Let’s tackle this piece by piece first, and we’ll put everything in a nice little script at the end of the post.
First, we need to add the ReportViewer assembly to the script. For this I am using the WinForms report viewer assembly. There is similar report viewer assembly for web forms.
See full article
VN:F [1.9.22_1171]
Rating: 10.0/10 (3 votes cast)
VN:F [1.9.22_1171]
About a belle, 8.0 out of 10 based on 10 ratings
Posted in Powershell, SQL Server BI, SSRS | Comments
August 14th, 2015 by belle
Windows 10 and Visual Studio 2015 have been released.
Microsoft claims Windows 10 as the best OS yet and Visual Studio 2015 has been enriched with ability to work on desktop, mobile (Windows, Android, and iOS), web and cloud applications and services. (It’s pretty sweet that there is a free Visual Studio Community version too!)
Here are some resources you’ll need to get started (including tools, online courses).
VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
About a belle, 8.0 out of 10 based on 10 ratings
Posted in musings | Comments
July 26th, 2015 by belle
We can use PowerShell to discover many SSRS properties, including the different parameters available in a report. This blog post is based on SQL Server 2014 and PowerShell V5.
The example report utilizes different variations of parameters. In the example, Customer ID is an integer. Order Date From and To are dates. Online Flag is a boolean. Min Total Due is a float. Status is a multi-value text.
Additional properties can be found in the Report Parameter window, including whether the parameter is nullable, if it’s multivalued, or if it’s visible or hidden, etc.
To do this in PowerShell, the first thing to do is to add the assembly that will allow us to create the ReportViewer object. Note that the version and public key token are specified, so check the version you have on your machine to ensure the accuracy.
See full blog post here
VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
About a belle, 8.0 out of 10 based on 10 ratings
Posted in musings, Powershell, SQL Server BI, SSRS, Tutorials | Comments
VN:F [1.9.22_1171]
Rating: 8.0/10 (10 votes cast)
VN:F [1.9.22_1171]
About a belle, 8.0 out of 10 based on 10 ratings