/// <summary>
        ///     Sets an Variable to the given value
        /// </summary>
        /// <param name="query">The query.</param>
        /// <param name="name">The name.</param>
        /// <param name="value">The value.</param>
        /// <returns></returns>
        public static RootQuery SetVariable(this RootQuery query, string name, object value)
        {
            var transpiledValue = MsSql.ParameterValue(new SqlParameter(name, value));
            var sqlName         = name;

            if (!sqlName.StartsWith("@"))
            {
                sqlName = "@" + sqlName;
            }

            query.QueryText("SET {0} = {1}", sqlName, transpiledValue);
            return(query);
        }