开发类似于.NET的SQL框架的价值



,在Microsoft的.NET框架C#,Visual Basic,F#,PowerShell等的广泛支持下。我一直在想为什么没有任何类似的数据库开发框架创建(我至少找不到任何)。

这使我考虑开发自己的框架,但我不禁会认为,如果对这样的事情有很大的需求,那肯定有人已经开始了这样的项目一个开源项目。

我对技术方面的初步想法是:

  • 该框架将尽可能地以Microsoft .NET框架进行建模。就我个人而言,我有点偏向.net&T-SQL,但我认为,通过提供与.NET相似的功能可以帮助新开发人员的学习曲线。
  • 将有某种类型的安装程序,该选项将框架对象部署在单独的专用数据库中,或将对象包含在另一个数据库的架构中。另外,有一个选择简单地生成脚本以创建对象的选项。
  • 能够选择要安装的对象(类似于jQuery UI的方式类似于您在自定义下载包中所需的组件)以防止数据库变得肿。
  • 支持严格的ANSI SQL以及特定于供应商的版本(例如SQL Server,Oracle,MySQL)。

我猜我真正想要的是:

  1. 是否有人遇到过已经开发的类似的东西?
  2. 您对为什么这是好主意或不好的想法有任何相关见解

编辑

基本上,我正在设想该框架是提供一组常见的辅助功能/过程,Tally/number表等...

...

一个典型示例将是将日期格式化为可以与SQL Server一起使用的字符串的函数(SQL Server 2012将其作为内置功能引入)。

和,通过框架,我正在考虑数据库内的开发方案(即编程功能,存储过程,临时脚本等...)与与外部数据库进行交互或连接到外部数据库(例如,ling2sql,orm's)。

假设数据库中存在这些对象/助手,而不是某种.NET库,是的,这些数据库助手助手函数浮动,肯定有帮助他们进入一个一致的库。

我认为最大的问题是性能。出于绩效原因,有时有必要使用一些丑陋的内联表达,而不是将其很好地包装到UDF中。或者优化SQL代码可能是有益的,因为您知道某个表有很多行或没有很多行,或者某个字段是否选择性。

这与安全问题一起可能意味着您的平均DBA不想安装助手功能,因为他们不知道性能或安全性影响。这与DBA不喜欢安装CLR功能的行相同。

,但我当然从未遇到过SQL辅助功能的中央可安装库,我想您可以查看Codeplex或其他许多开源代码库之一,以查看是否存在此类内容。

去吧!

我不确定您在说什么,但是自2005年以来,.NET已集成到SQL Server本身中。也许您正在考虑CLR集成?

您应该研究实体框架和lambda表达式。

最新更新