Index: MySql.Data/Provider/Source/command.cs =================================================================== --- MySql.Data/Provider/Source/command.cs (revision 1492) +++ MySql.Data/Provider/Source/command.cs (working copy) @@ -123,7 +123,7 @@ cmdText = cmdText.Substring(0, cmdText.Length - 14); cmdText = cmdText + "() VALUES ()"; } - + this.RemoveBrackets(); } } @@ -472,6 +472,34 @@ return val; } + private void RemoveBrackets() + { + char[] chars = this.cmdText.ToCharArray(); + bool quoted = false; + char qch = '"'; + for (int i = 0; i < chars.Length; i++) + { + if (((chars[i] == '\"') || (chars[i] == '\'')) && (i > 0) && (chars[i - 1] != '\\')) + { + if (!quoted) + { + qch = chars[i]; + quoted = true; + } + else if (qch == chars[i]) + { + quoted = false; + } + continue; + } + + if (!quoted && ((chars[i] == '[') || (chars[i] == ']'))) + chars[i] = '`'; + } + this.cmdText = new string(chars); + } + + private void HandleCommandBehaviors(CommandBehavior behavior) { if ((behavior & CommandBehavior.SchemaOnly) != 0)