Visual Studio 2005 ошибка с Юникодом - PullRequest
0 голосов
/ 20 января 2011
    Dim findTheseVals(1) As Object
    ' Set the values of the keys to find.
    Dim myDAgn As New SqlDataAdapter

    findTheseVals(0) = pDivisionno
    findTheseVals(1) = pGNe

    sqlCon.Open()

    Dim myDSGN As New DataSet
    myDAgn.SelectCommand = New SqlCommand("SELECT * FROM Villages", sqlCon)
    myDAgn.Fill(myDSGN, "Villages")

    myPrimaryKey(0) = myDSGN.Tables("Villages").Columns("DivisionNo")
    myPrimaryKey(1) = myDSGN.Tables("Villages").Columns("VillageSin")

    myDSGN.Tables("Villages").PrimaryKey = myPrimaryKey

    Dim myRow As DataRow

    myRow = myDSGN.Tables("Villages").Rows.Find(findTheseVals)


    If Not (myRow Is Nothing) Then
        isExistsVi = True
        VIid = myRow.Item("VillageID")
    Else
        isExistsVi = False
    End If
    sqlCon.Close()

pGNe - это параметр. VillageSin - это столбец, содержащий данные UNICODE. При компиляции возникает следующая ошибка: «Эти столбцы не имеют уникальных значений»

Как выполнить поиск данных Unicode из набора данных Как исправить вышеприведенное c

1 Ответ

0 голосов
/ 20 января 2011

Кажется, что эта строка

myDSGN.Tables("Villages").PrimaryKey = myPrimaryKey

- это строка с ошибкой «Эти столбцы не имеют уникальных значений», поскольку ваши данные находятся в противоречии с уникальным требованиемпервичные ключи.

Все это означает, что вы не можете использовать Find.Это не имеет ничего общего с данными SQL Server или Unicode.

Вместо этого избавьтесь от этой строки myDSGN.Tables("Villages").PrimaryKey = myPrimaryKey и используйте . Выберите вместо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...