标题字数有限,不能说明白,实际是这样的:表 Tags,有两个字段:
InfoID(GUID)
TagName(String)大家一看就会明白,这是记录标签(TAG)的表。InfoID 对应另一个表中的ID。一个 InfoID 可能会有多个 TagName。当编辑一个 Info 时,会根据其 ID 在此表中查询,并将结果串成以半角逗号分隔的字符串放在文本框中进行编辑,保存时再将此字符串分割后存回数据库。
现在想和大家讨论的就是保存回数据库的方法。
我想到的方法有两种:
方法一:
  如果新的和旧的不同,先 Delete From [Tags] Where [InfoID]=@InfoID,然后再循环分割后的字符串 Insert 到数据库。
  此方法最省事!!!方法二:
  如果新的和旧的不同,将新的和旧的比较,得出需要删除的和添加的,再分别到数据库中进行操作。
  此方法比较繁琐。
对比两种方法,各有优缺点,大家讨论一下,从数据库效率而言,哪一种方法好些?
或者有其它什么办法?