DataTable Vb.net创建复合键

时间:2013-06-24 09:16:37

标签: vb.net winforms visual-studio-2012 datatable

我很高兴我有一个没有主键的数据库中的表。我认为原因是它只是一个包含很多外键的表。我真的不知道我的sql很差。所以这个表不是由我创建的,但是我在创建数据表时遇到了问题。要更新我的数据集,该表需要主键。由于所有列都不是唯一的,因此我必须制作复合键。谁知道怎么做。以下是在第一个中创建主键的代码。

 'after using adapter and all the connection process to fill the dataset

      Dim tableProduct As DataTable = productDataSet.Tables(0)


     tableProduct.PrimaryKey = New DataColumn() {tableProduct.Columns(0)}

这是我尝试创建复合键

            Dim tableProduct As DataTable = productDataSet.Tables(0)


     tableProduct.PrimaryKey = New DataColumn() {tableProduct.Columns(0)}
       tableProduct.PrimaryKey = New DataColumn() {tableProduct.Columns(1)}

我最近开始使用vb.net,之前我曾在java和php,Jquery等工作过。所以我不是那么体验.Net Framework如果我错误地问了这个问题请告诉我,所以我可以编辑谢谢

1 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,您需要使用两个(或更多)数据列来定义表主键。在上面的代码中,首先使用一列设置PrimaryKey,然后更改此主键并使用其他列。但是你总是得到只有一列的PrimaryKey。

试试这个

tableProduct.PrimaryKey = New DataColumn() _
                              {
                                   tableProduct.Columns(0), 
                                   tableProduct.Columns(1)  
                              }

请参阅How to: Initialize an Array Variable in VB.NET