Страница: 1 |
Страница: 1 |
Вопрос: Непонятная проблема.
Добавлено: 14.02.11 02:21
Автор вопроса: kalash-serg
Здравствуйте. Есть такая процедура, которая по предположению должна выбирать одну строку и менять ее. Казалось бы элементарная проблема. Но процедура не работает!!!
Почему-то обновление не происходит. Хотя дебаг показывает, что команды с апдейтом выполняются.
Кроме того, сделал попытку вывести всю таблицу в DataGrid на форму, там ее поменять, а потом апдейтить. Вот так работает. Но это не вариант, так как работаем на тестовой базе, а реальная база очень большая. И попытка загрузить ее на форму неизбежно вызовет зависание.
Прошу помочь мне, где я ошибаюсь. Уверен, что ошибка мелкая и глупая, но ее не видно.
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
Dim da As System.Data.SqlClient.SqlDataAdapter = SqlDtAdapSexes
Dim cmd As System.Data.SqlClient.SqlCommand
Dim parm As System.Data.SqlClient.SqlParameter
Dim conn As System.Data.SqlClient.SqlConnection = SqlConnection1
cmd = New System.Data.SqlClient.SqlCommand("SELECT BRK_Kod_Str, BRK_Jen_Pol_Rojden FROM tablBRK WHERE BRK_Kod_Str=45591", conn)
da.SelectCommand = cmd
Dim DtsSexesVer2 As DataSet = New DataSet("SexesDts")
da.Fill(DtsSexesVer2)
Dim MainTableBRK As DataTable
MainTableBRK = DtsSexesVer2.Tables("tablBRK")
Dim CurrTableBRK As DataRow
CurrTableBRK = MainTableBRK.Rows(0)
Console.WriteLine("{0} {1}", _
CurrTableBRK("BRK_Kod_Str").ToString, _
CurrTableBRK("BRK_Jen_Pol_Rojden").ToString)
MsgBox("begining string")
cmd = New System.Data.SqlClient.SqlCommand("UPDATE tablBRK SET BRK_Jen_Pol_Rojden = 55 WHERE BRK_Kod_Str = 45591", conn)
da.UpdateCommand = cmd
da.Update(DtsSexesVer2)
Console.WriteLine("{0} {1}", _
CurrTableBRK("BRK_Kod_Str").ToString, _
CurrTableBRK("BRK_Jen_Pol_Rojden").ToString)
End Sub
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Nezhniy
ICQ: 419841508
Вопросов: 9
Ответов: 100
Web-сайт:
Профиль | | #1
Добавлено: 14.02.11 23:29
обновление через .Refresh пробовал?
Номер ответа: 2
Автор ответа:
kalash-serg
Вопросов: 1
Ответов: 1
Профиль | | #2
Добавлено: 15.02.11 01:41
обновить таблицу?
Номер ответа: 3
Автор ответа:
SHDZ
ICQ: 209382104
Вопросов: 39
Ответов: 244
Профиль | | #3
Добавлено: 18.02.11 17:55
у тебя датасет на уровне процедуры, кнопку нажал и ВСЕ
т.е. апдейт не произойдет, т.к. датасет уже не существует, вернее никогда не существовал снаружи (там где происходит обновление)
Номер ответа: 4
Автор ответа:
SHDZ
ICQ: 209382104
Вопросов: 39
Ответов: 244
Профиль | | #4
Добавлено: 18.02.11 17:58
ага если ты хошь тутже обновить, то присвой новое значение через датаров а потом da.Update(DtsSexesVer2)