我想得到这样的查询。
INSERT INTO [z_odv_17.02.2018] ([Val1], [Val2]) VALUES (@p0, @p1)
但是 sqlkata 编译这个查询略有不同。
INSERT INTO [z_odv_17].[02].[2018] ([Val1], [Val2]) VALUES (@p0, @p1)
如何将带有点的整个表名包装到括号中?或者作为替代方式,如何让 sqlkata 忽略点?
基本上,我需要 sqlkata 来编译一个名称,[z_odv_17.02.2018]
而不是[z_odv_17].[02].[2018]
.
我曾尝试使用FromRaw
,但System.InvalidCastException
被抛出。它不能从SqlKata.RawFromClause
to 转换SqlKata.FromClause
。
重现错误的代码片段。
var name = "[z_odv_17.02.2018]";
var sql = new Query()
.FromRaw(name)
.AsInsert(new
{
Val1 = 1,
Val2 = true
});
var mssql = new SqlServerCompiler();
var mssqlResult = mssql.Compile(sql);
var mssqlText = mssqlResult.Sql;