public virtual void RecordScriptApplied(ChangeScript script)
        {
            try
            {
                string sql = string.Format(
                    CultureInfo.InvariantCulture,
                    "INSERT INTO {0} (change_number, complete_dt, applied_by, description) VALUES (@1, {1}, {2}, @2)", 
                    this.changeLogTableName,
                    this.syntax.GenerateTimestamp(),
                    this.syntax.GenerateUser());

                this.queryExecuter.Execute(
                        sql,
                        script.GetId(),
                        script.GetDescription());
            }
            catch (DbException e)
            {
                throw new SchemaVersionTrackingException("Could not update change log because: " + e.Message, e);
            }
        }
        public string GenerateDoDeltaFragmentHeader(ChangeScript changeScript)
        {
            StringBuilder builder = new StringBuilder();

            builder.AppendLine("--------------- Fragment begins: " + changeScript + " ---------------");

			builder.AppendLine("INSERT INTO " + TableName +
                           " (change_number, delta_set, start_dt, applied_by, description)" +
                           " VALUES (" + changeScript.GetId() + ", '" + deltaSet + "', " +
                           DbmsSyntax.GenerateTimestamp() +
                           ", " + DbmsSyntax.GenerateUser() + ", '" + changeScript.GetDescription() + "')" +
                           DbmsSyntax.GenerateStatementDelimiter());
            builder.Append(DbmsSyntax.GenerateCommit());
            return builder.ToString();
        }
        public string GenerateDoDeltaFragmentHeader(ChangeScript changeScript)
        {
            var builder = new StringBuilder();
            var syntax = DbmsSyntax;

            builder.AppendLine("--------------- Fragment begins: " + changeScript + " ---------------");
            builder.AppendLine("SET NOCOUNT ON");
            builder.AppendLine(syntax.GenerateTrace(">>>>>>>>>>>>>>> INICIA  DELTA: {0} >>>>>>>>>>>>>>>", changeScript));

            builder.AppendLine("INSERT INTO " + TableName +
                           " (change_number, delta_set, start_dt, applied_by, description)" +
                           " VALUES (" + changeScript.GetId() + ", '" + deltaSet + "', " +
                           syntax.GenerateTimestamp() +
                           ", " + syntax.GenerateUser() + ", '" + changeScript.GetDescription() + "')");
            builder.AppendLine(syntax.GenerateStatementDelimiter());

            builder.Append(syntax.GenerateCommit());
            builder.AppendLine("SET NOCOUNT OFF");
            return builder.ToString();
        }
        public string GenerateDoDeltaFragmentHeader(ChangeScript changeScript)
        {
            StringBuilder builder = new StringBuilder();

            builder.AppendLine("--------------- Fragment begins: " + changeScript + " ---------------");

            builder.AppendLine("INSERT INTO " + TableName +
                           " (ChangeNumber, Project, StartDate, AppliedBy, FileName)" +
                           " VALUES (" + changeScript.GetId() + ", '" + _deltaSet + "', " +
                           DbmsSyntax.GenerateTimestamp() +
                           ", " + DbmsSyntax.GenerateChangeOwner() + ", '" + changeScript.GetDescription() + "')" +
                           DbmsSyntax.GenerateStatementDelimiter());
            builder.Append(DbmsSyntax.GenerateCommit());
            return builder.ToString();
        }