public void Test_12() { var item = new SqlItem("[a].[b]"); Assert.Equal("[b]", item.Name); Assert.Equal("[a]", item.Prefix); Assert.Equal("[a].[b]", item.ToSql(new SqlServerDialect())); Assert.Equal("\"a\".\"b\"", item.ToSql(new PgSqlDialect())); Assert.Equal("`a`.`b`", item.ToSql(new MySqlDialect())); }
public void Test_15() { var item = new SqlItem("[a.b].[c]"); Assert.Equal("[c]", item.Name); Assert.Equal("[a.b]", item.Prefix); Assert.Equal("[a.b].[c]", item.ToSql(new SqlServerDialect())); Assert.Equal("\"a.b\".\"c\"", item.ToSql(new PgSqlDialect())); Assert.Equal("`a.b`.`c`", item.ToSql(new MySqlDialect())); }
public void Test_4() { var item = new SqlItem("t . a aS b "); Assert.Equal("a", item.Name); Assert.Equal("t", item.Prefix); Assert.Equal("b", item.Alias); Assert.Equal("[t].[a] As [b]", item.ToSql(new SqlServerDialect())); Assert.Equal("[test].[t].[a] As [b]", item.ToSql(new SqlServerDialect(), _database)); }
public void Test_16() { var item = new SqlItem("a.b.c"); Assert.Equal("c", item.Name); Assert.Equal("b", item.Prefix); Assert.Equal("a", item.DatabaseName); Assert.Equal("[a].[b].[c]", item.ToSql(new SqlServerDialect())); Assert.Equal("[a].[b].[c]", item.ToSql(new SqlServerDialect(), _database)); Assert.Equal("\"a\".\"b\".\"c\"", item.ToSql(new PgSqlDialect())); Assert.Equal("`a`.`b`.`c`", item.ToSql(new MySqlDialect())); }
/// <summary> /// 输出Sql /// </summary> public string ToSql() { var table = _item?.ToSql(_dialect); if (string.IsNullOrWhiteSpace(table)) { return(null); } return($"From {table}"); }
/// <summary> /// 输出Sql /// </summary> public string ToSql() { var table = Table?.ToSql(Dialect, TableDatabase); if (string.IsNullOrWhiteSpace(table)) { return(null); } return($"From {table}"); }
/// <summary> /// 获取列名列表 /// </summary> /// <param name="dialect">Sql方言</param> /// <param name="register">实体别名注册器</param> public string ToSql(IDialect dialect, IEntityAliasRegister register) { if (Raw || IsAggregation) { return(dialect.GetColumn(Name, dialect.GetSafeName(ColumnAlias))); } var result = new SqlItem(Name, GetTableAlias(register), ColumnAlias, isResolve: false); return(result.ToSql(dialect)); }
/// <summary> /// 输出Sql /// </summary> /// <returns></returns> public string ToSql() { var table = Table?.ToSql(Dialect, TableDatabase); return(string.IsNullOrWhiteSpace(table) ? null : $"From {table}"); }