我第一次使用本地数据库使用我的WPF项目。我有数据库设置,我正在连接好的ETC.我想要多个选择,在几个值或一大堆值之间。问题显然是人为错误会在输入数据时偶尔发生拼写错误。
如何进行数据输入,为用户提供多种选择?例如,我有一个名为“Category”的列,目前(这将在稍后扩展)我只想允许以下选项: 青铜 其它
我目前将列设置为nvarchar(50),但是经常手动输入相同的字符串...而不是我想做TBH ...所以...我可以设置它以便有它将接受的预定义值列表? :)
谢谢:D
答案 0 :(得分:1)
您可以在表列上使用任何复杂度的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
)