예제 #1
0
 private void OnQueryExecuted(ScriptStatement statement)
 {
     if (this.StatementExecuted != null)
     {
         MySqlScriptEventArgs args = new MySqlScriptEventArgs();
         args.Statement = statement;
         this.StatementExecuted(this, args);
     }
 }
예제 #2
0
        private List <ScriptStatement> BreakIntoStatements(bool ansiQuotes, bool noBackslashEscapes)
        {
            int startIndex = 0;
            List <ScriptStatement> list        = new List <ScriptStatement>();
            List <int>             lineNumbers = this.BreakScriptIntoLines();
            SqlTokenizer           tokenizer   = new SqlTokenizer(this.query);

            tokenizer.AnsiQuotes       = ansiQuotes;
            tokenizer.BackslashEscapes = !noBackslashEscapes;
            for (string str = tokenizer.NextToken(); str != null; str = tokenizer.NextToken())
            {
                if (!tokenizer.Quoted && !tokenizer.IsSize)
                {
                    int index = str.IndexOf(this.Delimiter);
                    if (index != -1)
                    {
                        int num3 = (tokenizer.Index - str.Length) + index;
                        if (tokenizer.Index == (this.query.Length - 1))
                        {
                            num3++;
                        }
                        string          str2 = this.query.Substring(startIndex, num3 - startIndex);
                        ScriptStatement item = new ScriptStatement();
                        item.text     = str2.Trim();
                        item.line     = this.FindLineNumber(startIndex, lineNumbers);
                        item.position = startIndex - lineNumbers[item.line];
                        list.Add(item);
                        startIndex = num3 + this.delimiter.Length;
                    }
                }
            }
            if (tokenizer.Index > startIndex)
            {
                string str3 = this.query.Substring(startIndex).Trim();
                if (!string.IsNullOrEmpty(str3))
                {
                    ScriptStatement statement2 = new ScriptStatement();
                    statement2.text     = str3;
                    statement2.line     = this.FindLineNumber(startIndex, lineNumbers);
                    statement2.position = startIndex - lineNumbers[statement2.line];
                    list.Add(statement2);
                }
            }
            return(list);
        }
예제 #3
0
		private List<ScriptStatement> BreakIntoStatements(bool ansiQuotes, bool noBackslashEscapes) {
			int startIndex = 0;
			List<ScriptStatement> list = new List<ScriptStatement>();
			List<int> lineNumbers = this.BreakScriptIntoLines();
			SqlTokenizer tokenizer = new SqlTokenizer(this.query);
			tokenizer.AnsiQuotes = ansiQuotes;
			tokenizer.BackslashEscapes = !noBackslashEscapes;
			for (string str = tokenizer.NextToken(); str != null; str = tokenizer.NextToken()) {
				if (!tokenizer.Quoted && !tokenizer.IsSize) {
					int index = str.IndexOf(this.Delimiter);
					if (index != -1) {
						int num3 = (tokenizer.Index - str.Length) + index;
						if (tokenizer.Index == (this.query.Length - 1)) {
							num3++;
						}
						string str2 = this.query.Substring(startIndex, num3 - startIndex);
						ScriptStatement item = new ScriptStatement();
						item.text = str2.Trim();
						item.line = this.FindLineNumber(startIndex, lineNumbers);
						item.position = startIndex - lineNumbers[item.line];
						list.Add(item);
						startIndex = num3 + this.delimiter.Length;
					}
				}
			}
			if (tokenizer.Index > startIndex) {
				string str3 = this.query.Substring(startIndex).Trim();
				if (!string.IsNullOrEmpty(str3)) {
					ScriptStatement statement2 = new ScriptStatement();
					statement2.text = str3;
					statement2.line = this.FindLineNumber(startIndex, lineNumbers);
					statement2.position = startIndex - lineNumbers[statement2.line];
					list.Add(statement2);
				}
			}
			return list;
		}
예제 #4
0
		private void OnQueryExecuted(ScriptStatement statement) {
			if (this.StatementExecuted != null) {
				MySqlScriptEventArgs args = new MySqlScriptEventArgs();
				args.Statement = statement;
				this.StatementExecuted(this, args);
			}
		}