我正在开发一个应用程序,该应用程序需要最终用户进行“一些”定制,从而影响数据库设计(超出参数化)。
现在,该应用程序支持在运行时使用现有表甚至新表的新列。但最终用户无法更改表格,所有设计工作都必须使用 Microsoft SQL Server Magament Studio 完成。
我的问题是:是否有任何类型的控件(或工具)可以实现此功能?我想将它嵌入到我的应用程序中,但如果它是一个外部工具就不会那么糟糕了。
我想要的是一些工具,让用户定义列(名称、类型、大小)的存储库,例如:
- 客户代码,BIGINT,不适用
- 客户姓名,Varchar,50
然后通过添加这些预定义的列来创建或更改表或视图。下面应该执行所需的 SQL 脚本,或者可能使用 SMO(SQL 管理对象)。
更新
目前它的应用程序与 WinForms 一起工作,但任何 WPF / ASP 解决方案将不胜感激。
提到和最终用户,我是指应用程序管理员,但不具备编程技能。
目的
目的是能够从自己的应用程序中扩展和自定义功能,而无需使用 SQL Server Managment Studio。
想象一下,您有一个 ERP,作为用户,您想在您的客户表中告知该应用程序原本不打算使用的内容,甚至没有可用字段,例如:GPS 位置、徽标、CEO 的照片......
当然我可以建议一些高级用户安装 SSMS Express,但这会给他们太多的自由。我也认为它是一种 IT 工具。我想要的是开发从应用程序自己的框架修改应用程序的能力。
如果可以从自己的应用程序中完成,则可以执行一些控制:
- 检查名为 X 的表字段是否总是使用相同的类型定义,
- 禁用修改不可自定义字段(应用程序字段)的功能,
- ...