Problems displaying this newsletter? View online.
SQL Server Central
Featured Contents
Question of the Day
Redgate SQL Monitor
The Voice of the DBA
 

HSA for Training

Most of us don't get any sort of training budget from our employer. In fact, some of our employers expect us to learn more and get certified on our own time and our own dime. Relatively few of us get to attend a conference that our employer pays for, which is a shame. I think conferences can be exciting and encouraging in helping you drive your career and knowledge forward.

This is one reason that Andy Warren and I started SQL Saturday. We wanted to bring the conference experience to many people whose employers might not pay for a trip. That has grown to over 100 events a year, all around the world, primarily thanks to tons of local efforts and the support of PASS.

For most of us, however, training involves some cost, often financial. Some people pay for a class or conference themselves, many pay for books, and some get their employer to provide funds. Asking an employer, however, is a chore, and this can be intimidating for many people.

Managers often are whimsical about approving training budgets, even for things like books. Either the employee really has to justify the cost (conference) or they may feel silly about asking for a small amount (a book). Managers also need to track and somehow justify their spending on training and balance this among employees. This creates friction and hassles for everyone.

Perhaps there's a better way. For those in the US, you might be familiar with the Health Savings Accounts (HSA) for medical expenses. In these, an employee can put away their own money for use on whatever medical costs they may incur. There are tax advantages here, but perhaps that would be something that would work for training.

Imagine an HSA for training, where the employer would designate an amount that each employee could use for training. This would be per year, with carry over amounts. The total budget per year might also be based on job and seniority. There also wouldn't be a need to seek approval, but rather, notify someone that you were using funds for some educational experience.

In any case, the employee would have a fund that they could use at their own discretion, and be both responsible and accountable for training. Maybe there are caps on accrual, or a limited list of places to spend the money, but this would remove some of the friction of keeping employees trained. We treat them like adults and expect them to make good decisions for their career. If there are issues, we handle them on a case by case basis.

I'm wondering if any of you have a training budget that is better structured. Perhaps some of you always get your requests approved, and perhaps some of you never ask. Let us know today what you think of this idea, and would this encourage more learning at your organization?

Steve Jones - SSC Editor

Join the debate, and respond to today's editorial on the forums

Redgate University
 
 Featured Contents

It's More Than What You Know

MVDBA (Mike Vessey) from SQLServerCentral

I'm a firm believer in keeping your tech skills up to date, as well as your social skills, What better way than attending or presenting at a conference or group meeting. The reason to attend an event I'm very fortunate that my company allows me training days and time for personal development, covering all expenses […]

SQL Database Project Code Branching in Git

Additional Articles from MSSQLTips.com

Source Control | Git | Branching - In this article...

From the SQL Server Central Blogs - SQL , Lift up your heads for the cloud - Azure SQL

kruti15ars from Kruti's SQL Blog

In my journey with Azure SQL Server I am often asked.1) Why should I move to cloud ?2) Which model should I go for ?3) What do I need...

From the SQL Server Central Blogs - Power Platform Quick Tips – Episode 02: Dynamic Power Apps Form Headers

Devin Knight from Devin Knight

Welcome back to my Power Platform Quick Tips series! In this second episode we look how to return back a dynamic header or title for

 

 Question of the Day

Today's question (by Steve Jones - SSC Editor):

 

Numeric and Decimal

What's the difference between the numeric and decimal datatypes?

Think you know the answer? Click here, and find out if you are right.

 

 

 Yesterday's Question of the Day (by Steve Jones - SSC Editor)

Getting the Options

I run this command in Management Studio:

select @@options

I get the result of 5496 back in the Results tab. What does this mean?

Answer: This is the value of the bitmap of option values

Explanation: All the SET options are stored in a bitmap. If you bitmap and with the value of @@OPTIONs, you will see the value of each item. As an example:

DECLARE @OptionValues INT

SELECT @OptionValues = @@Options
IF ( (1 & @OptionValues) = 1 ) PRINT 'DISABLE_DEF_CNST_CHK'
IF ( (2 & @OptionValues) = 2 ) PRINT 'IMPLICIT_TRANSACTIONS'
IF ( (4 & @OptionValues) = 4 ) PRINT 'CURSOR_CLOSE_ON_COMMIT'

Ref: @@Options - https://docs.microsoft.com/en-us/sql/t-sql/functions/options-transact-sql?view=sql-server-ver15

Discuss this question and answer on the forums

 

 

 

Database Pros Who Need Your Help

Here's a few of the new posts today on the forums. To see more, visit the forums.


SQL Server 2017 - Administration
migrate package siis from 2008 to 2107 - good evening I need to migrate packages ssis 2008 to 2017 I am looking for a method to export my packages that are on the 2008 server on the net I find this command who has a feedback experience USE MSDB SELECT 'EXEC XP_CMDSHELL ''DTUTIL /SQL ' + NAME +' /COPY FILE; D:\SQLDBAExperts\Packages\' + NAME+'.DTSX' […]
Whose account the job runs under? - I have a sql agent job that is called by a cmd file remotely using an admin account for example I will call it OrchestrorService account. In SQL agent job history I can see the job was invoked by that account. But the job step actually is a SSIS package. And the step is run […]
Unable to Join Databases to AG - I have a stand alone SQL 2008 R2 SQL Server that I'm migrating to a 3 node AG. At various times during the testing of the restore process to get the databases onto the new SQL Server 2017 servers that are on CU16  I run into a scenario where one or more databases will join […]
Using Storage DeDupe for AlwaysOn Availability Groups - I have a Sr. Sysadmin here who wants to turn on storage dedupe for the three nodes that will be host AG's because he really wants space savings.  The setup is that I actually have 3 sets of 3 nodes.  Each set of three nodes will be hosting databases from what is now a single […]
SQL Server 2017 - Development
sqlcmd - Unable to pass in exact file path as an input variable to :out - Hi there I have a routine which outputs an ID generated from a stored procedure into a text file as follows: :!!if exist \\LONDEVSQL01\Staging\SEG_DEV_H01\Import\SupplementaryImport\StoredProcedureRunTrackerID.txt  del \\LONDEVSQL01\Staging\SEG_DEV_H01\Import\SupplementaryImport\StoredProcedureRunTrackerID.txt --:connect localhost\SQL2008R2 :out \\LONDEVSQL01\Staging\SEG_DEV_H01\Import\SupplementaryImport\StoredProcedureRunTrackerID.txt select Ltrim(Rtrim(@StoredProcedureRunTrackerID)) Now i wanted to change this , so that the path for :out is not hardcoded and passed in as a variable, ie […]
SQL Server 2016 - Administration
Package error - when i ran the package through sql agent job  it got failed but i did not find any information in job history Executed as user: . Started: 11:59:55 AM Finished: 12:00:43 PM Elapsed: 47.281 seconds. The package execution failed. The step failed. How can we trouble shoot
Extended events - MY EXTENDED EVENT SCRIPT: CREATE EVENT SESSION [CLogins] ON SERVER ADD EVENT sqlserver.sql_statement_completed(SET collect_statement=(1) ACTION(sqlserver.database_name,sqlserver.nt_username,sqlserver.session_nt_username,sqlserver.sql_text,sqlserver.username) WHERE (([sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%SELECT%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%ALTER%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%DELETE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%UPDATE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%INSERT%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%CREATE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%DROP%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%RENAME%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%TRUNCATE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%COMMENT%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%MERGE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%CALL%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%EXPLAIN PLAN%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%LOCK TABLE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%GRANT%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%REVOKE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%INDEXES%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%TABLE%') OR [sqlserver].[like_i_sql_unicode_string]([sqlserver].[sql_text],N'%INDEX%')) […]
SQL Server 2016 - Development and T-SQL
The data types varchar and datetime2 are incompatible in the add operator. - In the procedure i have date column as datetime2 declare @date datetime2 = null,  @CaptureError varchar(100) when i am logging this variable like below SET @CaptureError= @CaptureError + ' ,Date: ' + coalesce(@Date, 'NULL') this is getting error as data types varchar and datetime2 are incompatible in the add operator. what is the workaround for […]
SSIS For each Loop not finding files when deployed - Hi, I have an issue with a SSIS package deployed to the catalog. This package includes a For Each container that scans a folder for CSV files. I can run the package from Visual Studio on my development box using my credentials and it completes successfully finds the files targeted by the for each loop […]
Administration - SQL Server 2014
Problem with calculating an approximate space required for online index rebuild - I have a database called TestDB which is in simple recovery model. I performed index rebuild on my Test Server which has no other user transactions except me. Before an online index rebuild the sizes of mdf and ldf files were as below:                   total size      […]
SQL 2012 - General
Join Query, two tables, two databases? - Is that possible?  To have two databases with one query?  If so the query below should populate some data!  If not, how can I accomplish the task? SELECT JobSheet.dbo.JobHrs.JobNo, JobSheet.dbo.JobHrs.ActualHrs, JobSheet.dbo.JobHrs.ReworkHrs, TimeReporting.dbo.TimeData.Time, TimeReporting.dbo.TimeData.Rework FROM JobSheet.dbo.JobHrs INNER JOIN TimeReporting.dbo.TimeData ON JobSheet.dbo.JobHrs.JobNo = TimeReporting.dbo.TimeData.JobNo WHERE JobSheet.dbo.JobHrs.JobNo = '19-0228B'  
General Cloud Computing Questions
Archival Options due to Regulation -   Hi Guys, I have an ongoing need to provide a archival solution for an ex-production system for Regulatory reasons. In a nutshell: active database is around 30GB, but there will be others pending of varying sizes there may be the need for a couple of queries a year initially, tapering off potentially need to […]
SSDT
Using variables in multiple packages - I have a SSIS Solution built in Visual Studio Community 2019 using SSDT. The solution contains about 15 packages. I am using 5 variables (created in the first package) that I would like to use in all of the other packages. Is there a way to make a variable usable in other packages within the […]
Expression won't evaluate for property - I am attempting to parameterize the three properties for checkpoints in a SSDT 2017 SSIS project and keep receiving this error for the CheckpointUsage property: Error loading: The result of the expression "@[$Project::parCheckpointUsage]" on property cannot be written to the property. The expression was evaluated, but cannot be set on the property. I have the […]
Events
PASS Local Group/Virtual Group/SQL Saturday organizers corner - A dedicated place for PASS Local Group/Virtual Group/SQL Saturday organizers to share marketing and promotional content as well as discuss what is working and what is not (credit for the idea goes to Cecilia Brusatori)
 

 

RSS FeedTwitter

This email has been sent to {email}. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com. This newsletter was sent to you because you signed up at SQLServerCentral.com.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -