Exemple #1
0
 protected override void VisitSubstringFunction(SubstringFunction function)
 {
     this.CommandText.Append("SUBSTR(");
     this.VisitField(function.Argument);
     this.CommandText.Append(", ");
     this.VisitField(function.StartIndex);
     this.CommandText.Append(" + 1");
     if (function.Length != null)
     {
         this.CommandText.Append(", ");
         this.VisitField(function.Length);
     }
     this.CommandText.Append(")");
 }
Exemple #2
0
 protected override void VisitStringCharIndexFunction(StringIndexFunction function)
 {
     this.CommandText.Append("(");
     if (function.StartIndex != null)
     {
         // e.g. INSTR(SUBSTR(text, startIndex), stringToFind) + startIndex
         var substring = new SubstringFunction()
         {
             Argument = function.Argument, StartIndex = function.StartIndex
         };
         this.VisitFunction("INSTR", substring, function.StringToFind);
         this.CommandText.Append(" + ");
         this.VisitField(function.StartIndex);
     }
     else
     {
         this.VisitFunction("INSTR", function.Argument, function.StringToFind);
     }
     this.CommandText.Append(" - 1)");
 }