diff --git a/src/Pomelo.Extensions.Caching.MySql/MySqlQueries.cs b/src/Pomelo.Extensions.Caching.MySql/MySqlQueries.cs index 0eccd34..b3be590 100644 --- a/src/Pomelo.Extensions.Caching.MySql/MySqlQueries.cs +++ b/src/Pomelo.Extensions.Caching.MySql/MySqlQueries.cs @@ -52,7 +52,7 @@ internal class MySqlQueries public MySqlQueries(string schemaName, string tableName) { var tableNameWithSchema = string.Format( - "{0}.{1}", DelimitIdentifier(schemaName), DelimitIdentifier(tableName)); + "{0}.{1}", EscapeIdentifier(DelimitIdentifier(schemaName)), EscapeIdentifier(DelimitIdentifier(tableName))); // when retrieving an item, we do an UPDATE first and then a SELECT GetCacheItem = string.Format(UpdateCacheItemFormat + GetCacheItemFormat, tableNameWithSchema); @@ -85,5 +85,10 @@ private string EscapeLiteral(string literal) { return literal.Replace("'", "''"); } + + private string EscapeIdentifier(string identifier) + { + return $"`{identifier}`"; + } } }