c# – 允许用户即时向其数据库添加列的最佳方法是什么?
发布时间:2020-12-15 19:44:12 所属栏目:百科 来源:网络整理
导读:我们正在考虑设计一个管理联系信息的应用程序. 客户的一个要求是允许其powerusers或admin-type staff通过UI向数据库添加列.客户无法直接访问数据库(即,他们无法使用SSMS打开并进行更改). 我看到控件1)输入字段名称,2)输入数据类型,3)选择要添加字段的表.用户
我们正在考虑设计一个管理联系信息的应用程序.
客户的一个要求是允许其powerusers或admin-type staff通过UI向数据库添加列.客户无法直接访问数据库(即,他们无法使用SSMS打开并进行更改). 我看到控件1)输入字段名称,2)输入数据类型,3)选择要添加字段的表.用户单击按钮后,将使用新字段更新数据库.我需要检查适当的权限,该字段是否已经存在等等.我们还需要将表单字段连接到这个新字段,就像报表设计器界面一样. >我在哪里可以找到显示我想要做的样本? 编辑 – 我们需要使用SQL Server.不可协商. 解决方法
是绝对要求他们向表中添加列,还是只能指定要存储的其他字段?我强烈建议你考虑像Entity-Attribute-Value这样的东西,而不是允许最终用户(管理员算作最终用户)进行架构更改.
对于类似这样的事情,您将有一个表来定义自定义字段,然后是一个多对多关联表,以允许用户为联系人指定自定义字段的值.例如: Contact --------- -> ContactId | FirstName | LastName | etc. | | ContactField | -------------- | ContactFieldId <--- | FieldName | | | | ContactFieldValue | | ------------------- | -- ContactId | ContactFieldId ------------------------- Value 实现的细节显然取决于您(例如,是否使用ContactId ContactFieldId作为ContactFieldValue中的复合主键),但这应该得到一般性的想法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |