完成 sqlite codefirst curd expression 开发与测试

This commit is contained in:
28810
2019-01-09 15:50:43 +08:00
parent 40f6e53edd
commit 27bc603d46
33 changed files with 523 additions and 599 deletions

View File

@ -9,7 +9,7 @@ namespace FreeSql.Tests.Oracle {
IInsert<Topic> insert => g.oracle.Insert<Topic>(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
[Table(Name = "tb_topic")]
[Table(Name = "tb_topic_insert")]
class Topic {
[Column(IsIdentity = true, IsPrimary = true)]
public int Id { get; set; }
@ -26,51 +26,51 @@ namespace FreeSql.Tests.Oracle {
var data = new List<object>();
var sql = insert.AppendData(items.First()).ToSql();
Assert.Equal("INSERT INTO \"tb_topic\"(\"Clicks\", \"Title\", \"CreateTime\") VALUES(:Clicks0, :Title0, :CreateTime0)", sql);
Assert.Equal("INSERT INTO \"tb_topic_insert\"(\"Clicks\", \"Title\", \"CreateTime\") VALUES(:Clicks0, :Title0, :CreateTime0)", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
sql = insert.AppendData(items).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks0, :Title0, :CreateTime0)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks1, :Title1, :CreateTime1)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks2, :Title2, :CreateTime2)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks3, :Title3, :CreateTime3)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks4, :Title4, :CreateTime4)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks5, :Title5, :CreateTime5)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks6, :Title6, :CreateTime6)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks7, :Title7, :CreateTime7)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks8, :Title8, :CreateTime8)
INTO ""tb_topic""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks9, :Title9, :CreateTime9)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks0, :Title0, :CreateTime0)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks1, :Title1, :CreateTime1)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks2, :Title2, :CreateTime2)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks3, :Title3, :CreateTime3)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks4, :Title4, :CreateTime4)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks5, :Title5, :CreateTime5)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks6, :Title6, :CreateTime6)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks7, :Title7, :CreateTime7)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks8, :Title8, :CreateTime8)
INTO ""tb_topic_insert""(""Clicks"", ""Title"", ""CreateTime"") VALUES(:Clicks9, :Title9, :CreateTime9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
sql = insert.AppendData(items).InsertColumns(a => a.Title).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Title"") VALUES(:Title0)
INTO ""tb_topic""(""Title"") VALUES(:Title1)
INTO ""tb_topic""(""Title"") VALUES(:Title2)
INTO ""tb_topic""(""Title"") VALUES(:Title3)
INTO ""tb_topic""(""Title"") VALUES(:Title4)
INTO ""tb_topic""(""Title"") VALUES(:Title5)
INTO ""tb_topic""(""Title"") VALUES(:Title6)
INTO ""tb_topic""(""Title"") VALUES(:Title7)
INTO ""tb_topic""(""Title"") VALUES(:Title8)
INTO ""tb_topic""(""Title"") VALUES(:Title9)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title0)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title1)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title2)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title3)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title4)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title5)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title6)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title7)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title8)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
sql = insert.AppendData(items).IgnoreColumns(a => a.CreateTime).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks0, :Title0)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks1, :Title1)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks2, :Title2)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks3, :Title3)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks4, :Title4)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks5, :Title5)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks6, :Title6)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks7, :Title7)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks8, :Title8)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks0, :Title0)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks1, :Title1)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks2, :Title2)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks3, :Title3)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks4, :Title4)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks5, :Title5)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks6, :Title6)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks7, :Title7)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks8, :Title8)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
}
@ -83,31 +83,31 @@ INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
var data = new List<object>();
var sql = insert.AppendData(items).InsertColumns(a => a.Title).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Title"") VALUES(:Title0)
INTO ""tb_topic""(""Title"") VALUES(:Title1)
INTO ""tb_topic""(""Title"") VALUES(:Title2)
INTO ""tb_topic""(""Title"") VALUES(:Title3)
INTO ""tb_topic""(""Title"") VALUES(:Title4)
INTO ""tb_topic""(""Title"") VALUES(:Title5)
INTO ""tb_topic""(""Title"") VALUES(:Title6)
INTO ""tb_topic""(""Title"") VALUES(:Title7)
INTO ""tb_topic""(""Title"") VALUES(:Title8)
INTO ""tb_topic""(""Title"") VALUES(:Title9)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title0)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title1)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title2)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title3)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title4)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title5)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title6)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title7)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title8)
INTO ""tb_topic_insert""(""Title"") VALUES(:Title9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
sql = insert.AppendData(items).InsertColumns(a =>new { a.Title, a.Clicks }).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks0, :Title0)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks1, :Title1)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks2, :Title2)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks3, :Title3)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks4, :Title4)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks5, :Title5)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks6, :Title6)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks7, :Title7)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks8, :Title8)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks0, :Title0)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks1, :Title1)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks2, :Title2)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks3, :Title3)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks4, :Title4)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks5, :Title5)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks6, :Title6)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks7, :Title7)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks8, :Title8)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
}
@ -119,31 +119,31 @@ INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
var data = new List<object>();
var sql = insert.AppendData(items).IgnoreColumns(a => a.CreateTime).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks0, :Title0)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks1, :Title1)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks2, :Title2)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks3, :Title3)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks4, :Title4)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks5, :Title5)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks6, :Title6)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks7, :Title7)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks8, :Title8)
INTO ""tb_topic""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks0, :Title0)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks1, :Title1)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks2, :Title2)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks3, :Title3)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks4, :Title4)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks5, :Title5)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks6, :Title6)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks7, :Title7)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks8, :Title8)
INTO ""tb_topic_insert""(""Clicks"", ""Title"") VALUES(:Clicks9, :Title9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
sql = insert.AppendData(items).IgnoreColumns(a => new { a.Title, a.CreateTime }).ToSql();
Assert.Equal(@"INSERT ALL
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks0)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks1)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks2)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks3)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks4)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks5)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks6)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks7)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks8)
INTO ""tb_topic""(""Clicks"") VALUES(:Clicks9)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks0)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks1)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks2)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks3)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks4)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks5)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks6)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks7)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks8)
INTO ""tb_topic_insert""(""Clicks"") VALUES(:Clicks9)
SELECT 1 FROM DUAL", sql);
data.Add(insert.AppendData(items.First()).ExecuteIdentity());
}