private string GenerateSelectSql(TableInfo tableInfo)
{
if (tableInfo.Primary.Count == 0)
{
Logger?.LogWarning("Can't generate select sql, primary key is missing.");
return(null);
}
var tableName = GetTableName(tableInfo);
var database = GetDatabaseName(tableInfo);
string where = "";
foreach (var column in tableInfo.Primary)
{
where += $" [{GetColumnName(column)}] = @{column.Name} AND";
}
where = where.Substring(0, where.Length - 3);
var sql = string.IsNullOrWhiteSpace(database) ? $"SELECT * FROM [{tableName}] WHERE {where};" :
$"USE [{database}]; SELECT * FROM [{tableName}] WHERE {where};";
return(sql);
}