我在C#中使用MySql.Data.MySqlClient .Net Core Class Library 8.0.18
。当我尝试插入格式为“ * is *”的某些类型的字符串时,我收到SQL语法错误。
插入代码:
using MySqlX.XDevAPI.Common;
using MySqlX.XDevAPI.Relational;
...
var table = DB.Instance.Schema.GetTable(tableName);
table
.Insert(columnNames)
.Values(columnValues);
例如插入列值“ This is something”将生成:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '`something`))' at line 1
它似乎与其他任何字符串都可以正常工作,即使包含空格也是如此。这是关于使用单词“ is”,后跟空格来中断插入内容。在MySql Workbench中直接用相同的数据直接编写插入sql字符串也可以。
可悲的是,XDevAPI有点黑箱,我无法直接检查生成的sql字符串。
关于如何调试此问题或有什么问题的任何建议?