flq*_*flq 1 .net c# sql semantics
我一直想知道是否有任何代码能够以某种对象树的形式表示SQL,这些对象树可以被组装,修改然后最终呈现为有效的SQL?
在我的头顶,它可能看起来像那样......
var stmnt = new Statement();
stmnt
.AddMaster("Customer")
.Show("Firstname, "Lastname")
.AddJoin("Address", "ID", "CustomerID")
.Show("Street", "City");
stmnt.WhereStatement()
.AddParameter("Address.City", Op.Equal);
string sql = stmnt.Generate();
// select a.FirstName, a.LastName, b.Street, b.City
// from Customer a
// join Address b on b.CustomerID = a.ID
// where b.City = :p1
Run Code Online (Sandbox Code Playgroud)
这只是一个例子,那里的东西可能完全不同,但是,是的,我很想听到那方面的内容.
更新:
我知道使用ORM技术从数据库中获取结果的众多可能性,但我正在使用SQL本身的模型.我知道抽象级别非常低,但它可能允许多个协作者可以处理SQL语句(多个连接,多个连接)的情况,然后可以在构建阶段结束时"呈现".