2011-08-31 100 views
3

我想在MS中的一个柱状图中插入多个选中的复选框值SQL Server 2005/08 例如, 复选框是:如何在一列中插入多个选中的复选框值

板球 足球 绘画

表结构,如:

Id | name  | Hobbies 
    ----|----------|-------------------------- 
    1 | Atish | cricket,football,painting 
    2 | Swapnil | football, painting 

你能帮助我吗?

+1

为什么在那里名_ID = 1为一个SQL查询?听起来像是一个非最佳的数据库设计给我。我会认为单独的列会更有意义或有几个相关的表。请提供进一步的细节。 – Simon

回答

3

有一种叫做第三范式:用它:)

基本上这意味着你的,你需要的爱好从该表中分离,创建可能的业余爱好一个单独的表,并创建一个lookup-人与人之间的爱好表。

肮脏的方式是定义一个分隔符,然后在列中插入像'cricktet | football | painting'这样的格式:但我真的不会建议这么做!

+0

感谢MADmap 我可以没有在同一张表中做。请告诉我,如果你知道。这将是非常友善的你...... – Swapnil

0

可以使三个表

[Names] 
Name_ID (int) 
Name (varchar) 

[Hobbies] 
Hobby_ID 
Hobby (varchar) 

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

所以,如果Atish,谁拥有名_ID = 1,和爱好板球,足球,绘画,其中有Hobby_ID:1,2和3,您Hobbies_Names表看起来像这样:

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

然后,你可以作出这样的选择所有的爱好,例如