' ' 附近的语法不正确
Incorrect syntax near ''
首先我遇到了这个错误:
Invalid object name "product_images_temporary"
在我添加 []
括号后,一切正常。但是当我再次删除它们时,出现了这个错误:
Incorrect syntax near ''
为什么这样做:
[product_images_temporary]
但这会引发异常 ("Incorrect syntax near ''"):
product_images_temporary
更多代码:
try
{
using (var sqlConnection = new DapperHelper().DatabaseConnection())
{
var sqlStatement = "SELECT * FROM product_images_temporary";
sqlConnection.Execute(sqlStatement);
}
}
catch (Exception e)
{
}
product_images_temporary
是 SQL 服务器中的保留字吗?比如 datetime
等等?我无法解释这个。
只需重命名 table,您的 table 名称中有一个不可见字符
在 s
和 _
之间是 Unicode zero-width-space 字符 \u200B
。这是不可见的,因此使字符串不是它看起来的样子。
这个字符在 SQL 对象标识符名称中是不合法的,并且是您看到的错误的原因,使用 []
转义使其合法。
只需手动重新输入名称或在两个字符之间 double-delete。
由于您的代码确实适用于 []
,这意味着实际的 table 名称包含 \u200B
,因此也应该重命名。
首先我遇到了这个错误:
Invalid object name "product_images_temporary"
在我添加 []
括号后,一切正常。但是当我再次删除它们时,出现了这个错误:
Incorrect syntax near ''
为什么这样做:
[product_images_temporary]
但这会引发异常 ("Incorrect syntax near ''"):
product_images_temporary
更多代码:
try
{
using (var sqlConnection = new DapperHelper().DatabaseConnection())
{
var sqlStatement = "SELECT * FROM product_images_temporary";
sqlConnection.Execute(sqlStatement);
}
}
catch (Exception e)
{
}
product_images_temporary
是 SQL 服务器中的保留字吗?比如 datetime
等等?我无法解释这个。
只需重命名 table,您的 table 名称中有一个不可见字符
在 s
和 _
之间是 Unicode zero-width-space 字符 \u200B
。这是不可见的,因此使字符串不是它看起来的样子。
这个字符在 SQL 对象标识符名称中是不合法的,并且是您看到的错误的原因,使用 []
转义使其合法。
只需手动重新输入名称或在两个字符之间 double-delete。
由于您的代码确实适用于 []
,这意味着实际的 table 名称包含 \u200B
,因此也应该重命名。