Пример #1
0
        private static void ExecuteSql(UpdateContext context, string rawSqlText)
        {
            Regex regex = new Regex("^\\s*GO\\s*$", RegexOptions.IgnoreCase | RegexOptions.Multiline);
            string[] lines = regex.Split(rawSqlText);

            using (SqlCommand cmd = context.Connection.CreateCommand())
            {
                cmd.Connection = context.Connection;
                cmd.Transaction = context.Transaction;
                cmd.CommandTimeout = context.CommandTimeout;

                foreach (string line in lines)
                {
                    if (line.Length > 0)
                    {
                        try
                        {
                            cmd.CommandText = line;
                            cmd.CommandType = CommandType.Text;

                            cmd.ExecuteNonQuery();
                        }
                        catch (Exception e)
                        {
                            Console.WriteLine("Unexpected error with line in upgrade script: {0}", line);
                            Console.WriteLine("Error: {0}", e.Message);
                            throw;
                        }
                    }
                }
            }
        }
Пример #2
0
        private static void ExecuteSql(UpdateContext context, string rawSqlText)
        {
            Regex regex = new Regex("^\\s*GO\\s*$", RegexOptions.IgnoreCase | RegexOptions.Multiline);
            string[] lines = regex.Split(rawSqlText);

            using (SqlCommand cmd = context.Connection.CreateCommand())
            {
                cmd.Connection = context.Connection;
                cmd.Transaction = context.Transaction;

                foreach (string line in lines)
                {
                    if (line.Length > 0)
                    {
                        cmd.CommandText = line;
                        cmd.CommandType = CommandType.Text;

                        cmd.ExecuteNonQuery();
                    }
                }
            }
        }