如何在一列中插入多个选定的复选框值

时间:2011-08-31 11:17:06

标签: sql-server-2005 sql-server-2008

我想在MS Sql server 2005/08的一个colunm中插入多个选中的复选框值 例如。 复选框是:

板球 足球 画

表结构如:

    Id | name     | Hobbies
   ----|----------|--------------------------
    1  | Atish    | cricket,football,painting
    2  | Swapnil  | football, painting
你可以帮帮我吗?

2 个答案:

答案 0 :(得分:3)

有一种称为第三种常规形式:使用它:)

基本上这对您来说意味着,您需要将兴趣与该表分开,创建一个具有可能兴趣爱好的单独表格,并在人与爱好之间创建一个查找表。

肮脏的方式是定义一个分隔符并插入类似于cricktet | football | painting的smth:但我真的不建议这样做!

答案 1 :(得分:0)

你可以制作三张桌子

[Names]
Name_ID (int)
Name (varchar)

[Hobbies]
Hobby_ID
Hobby (varchar)

[Hobbies_Names]
Name_ID (foreign key)
Hobby_ID (foregin key)

所以,如果Atish,Name_ID = 1,爱好板球,足球,绘画,有Hobby_ID:1,2和3,你的Hobbies_Names表将如下所示:

    Name_Id | Hobby_ID
   ---------|----------|
    1       | 1
    1       | 2
    1       | 3

然后你可以创建一个SQL查询来选择所有的爱好,其中Name_ID = 1,例如