2015-07-19 67 views
0

我第一次使用本地数据库与我的WPF项目。我有数据库设置,并且我正在连接好ETC.我想要成为多个选择的一些列,可以是几个值之间的值,也可以是一堆值。问题很明显,当输入数据时,人为错误会不时出现拼写错误。如何在本地数据库中创建“多选”列?

我该如何去让数据输入给用户一个多项选择?因此,举例来说,我有一个名为“类别”栏,并在瞬间(这将在以后扩展)我只想用下列选项: 青铜 其它

我必须设置为nvarchar的列(50 ),但是不断输入相同的字符串...不是我想做的TBH ...所以...我可以设置它,以便有一个预定义的值列表它将接受? :)

感谢:d

回答

1

您可以在表列(S)使用任何复杂的CHECK约束。 Check MSDN here 所以,你的表的定义是为:

CREATE TABLE T 
(
    Category nvarchar(50) CHECK (Category in ('Bronze','Misc')) 
) 

如果你希望你的可能值的列表,以改变未来,你不想改变表定义,您可以创建一个单独的表与表的值并使用外键。

CREATE TABLE Categories 
(
    Id int PRIMARY KEY, 
    CategoryName nvarchar(50) 
) 

INSERT INTO Categories VALUES (1, 'Bronze'), (2, 'Silver'), (3, 'Misc') 

CREATE TABLE T 
(
    CategoryId int REFERENCES Categories 
) 
相关问题