Sql 在数据库中存储UI列设置
我正在开发一个在UI中使用表格的网站,我们的客户希望用户能够自定义他们希望在UI中看到的每个表格的列,并将这些设置存储在数据库中Sql 在数据库中存储UI列设置,sql,.net,sql-server,Sql,.net,Sql Server,我正在开发一个在UI中使用表格的网站,我们的客户希望用户能够自定义他们希望在UI中看到的每个表格的列,并将这些设置存储在数据库中 我的问题是:在数据库中支持此功能,避免将存储的数据与UI耦合的最干净的方法是什么?您可以创建一个存储过程,并使用动态sql使用sp_executesql。列名和表名可以作为参数传递。这些参数可以从存储表和列的表中加载,因此一个表+列就是一条记录。我如何识别数据库中的每个UI表和列?按姓名如果将来我决定更改UI中的列名?(例如,我用电子邮件代替邮件)。这不是一个非常一致
我的问题是:在数据库中支持此功能,避免将存储的数据与UI耦合的最干净的方法是什么?您可以创建一个存储过程,并使用动态sql使用sp_executesql。列名和表名可以作为参数传递。这些参数可以从存储表和列的表中加载,因此一个表+列就是一条记录。我如何识别数据库中的每个UI表和列?按姓名如果将来我决定更改UI中的列名?(例如,我用电子邮件代替邮件)。这不是一个非常一致的解决方案……没有一个与您的需求非常一致的解决方案。但是您可以存储
对象id
和列id
,然后至少可以更改表和列的名称。SP需要通过OBJECT\u NAME(@tableID)
和COL\u NAME(@tableID,@columnID)
确定名称。通过此sql查询获得ID:select*from sys.columns,其中object\u ID=object\u ID('TableName')