所以,我有一个表格,它有一组分类(将来可能会有变化)。根据另一个问题(Here)的建议,我创建了一个包含可能类别列表的单独表格。我将如何创建可能的外键的下拉列表?
在我的主表,我有此列,作为一个例子:
[Category] NVARCHAR(50) REFERENCES Categories,
我已经检查这个作品 - 它仅接受我在分类表中给出正确的值。
我该如何去向用户显示可能值的下拉列表,而不是在尝试添加外键不匹配的行时给他们一个大错误信息?
所以,我有一个表格,它有一组分类(将来可能会有变化)。根据另一个问题(Here)的建议,我创建了一个包含可能类别列表的单独表格。我将如何创建可能的外键的下拉列表?
在我的主表,我有此列,作为一个例子:
[Category] NVARCHAR(50) REFERENCES Categories,
我已经检查这个作品 - 它仅接受我在分类表中给出正确的值。
我该如何去向用户显示可能值的下拉列表,而不是在尝试添加外键不匹配的行时给他们一个大错误信息?
我会假设你知道连接已经DB
using (SqlConnection conn = new SqlConnection(@"Data Source=SHARKAWY;Initial Catalog=Booking;Persist Security Info=True;User ID=sa;Password=123456"))
{
try
{
string query = "select CategoryName, CategoryID from Categories";
SqlDataAdapter da = new SqlDataAdapter(query, conn);
conn.Open();
DataSet ds = new DataSet();
da.Fill(ds, "Categories");
cmbCategories.DisplayMember = "CategoryName";
cmbCategories.ValueMember = "CategoryID ";
cmbCategories.DataSource = ds.Tables["Categories"];
}
catch (Exception ex)
{
// write exception info to log or anything else
MessageBox.Show("Error occured!");
}
}
我猜你加载[类别],并把它们放在一个组合框不允许输入自定义文本。 – nvoigt
使用不同的结果并将其填充到组合框中:http://www.w3schools.com/sql/sql_distinct.asp – jdweng
我该在哪里做,以及如何? – pingu2k4