这更多的是设计而不是实现问题。我们有一个VB.NET前端到我们的数据库。目前的设计是使用元数据表来强制执行“前端没有SQL”策略。我认为我们所做的事情比硬编码差,因为我们现在拥有一大堆STORED PROC意大利面条代码。我们有很多动态SQL用于构建表格的全限定名称,然后将其发送回另一个处理实际加载平面文本文件的STORED PROC,例如。VB.NET GUI - TSQL动态SQL梦魇设计
ID DATA_TABLE_NAME DATA_TABLE_SCHEMA PTR_TABLE_NAME PTR_TABLE_SCHEMA
1 datatable DBO datatable_ptr DBO
所以我们有一个类,会抢了数据表名和表指针,它捣碎成在VB.NET前端类发送一个完整的名称,如database.dbo.datatable映射到database.dbo.datable_ptr并使用全局临时表来加载平面文本文件。那么有人在这个令人讨厌的元数据表中添加了一行,并且它使VB.NET FRONT END结束!有一个更好的方法来做到这一点,但我没有足够的经验来提出一个更好的通用解决方案。
程序员如何强调使用T-SQL和VB.NET的代码重用和通用编程,同时保持代码的可读性和可维护性?有没有人对设计模式的书籍或烹饪书籍有一些建议,可以让我指出一些更实用的解决方案?
哎唷!这主要是一个数据录入应用程序,你正在寻找重用/执行业务逻辑或更多的报告应用程序?不幸的是,找到解决方案可能会更容易实现。然后,在你答应月球买入之前,你最好阅读 –
PatFromCanada
这是一个数据录入应用程序,它接受来自其他机构的文本文件转储(一旦大小适合任何数据),然后进入我们的数据库中进行模拟。前端旨在统一我的部门用于将数据加载到数据库中的35个以上应用程序。每位主题专家都有自己的数据“fiefdom”,以及数据分析师提供的旧软件,这些软件工程师或数据库管理员没有受过培训。我负责维护和增强这个新的“主装载机”,同时我们有一个新的后端设计承包商。 – OpsResearch36
如果您使用的是SQL服务器,我会仔细查看一下SQL Server Integration Services,但最近我还没有使用它来推荐一个好的当前源。 – PatFromCanada