Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Хочу сделать запросец. Пихаю на формочку компонентик SQLCommand. Его свойству Connection присваиваю имя существующего на форме коннекшна. Остальное делаю программно: 'MsgBox(cUh.ConnectionString) MyCommand.Parameters.Clear() MyCommand.Parameters.Add("@arch", CheckBox1.Checked) MyCommand.CommandText = "update Priem " + _ "set archive=@arch" 'MsgBox(MyCommand.CommandText) 'MsgBox(cUh.State) MyCommand.ExecuteNonQuery() В ответ получаю: Additional information: ExecuteNonQuery: Connection property has not been initialized. Но я же присвоил значение полю Connection!? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 15:27 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
А тест коннекшена нормально проходит ? В самом коннекшене есть строка ConnectString, которая должна быть корректно заполенена, а также ряд других жизненнонеобходимых свойств ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 15:41 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Дело в том, что на форме есть еще датаадаптер, который использует этот коннекшн.. ... aUh.UpdateCommand.CommandText = _ "UPDATE Uhod SET ttn_uh=@ttn, auto_uh=@am, perevozchik=@org, data_uh=@duh, " & _ "poruchenie=@por, data_uh_sudna=@duhs, sudno=@sudno where id_prih=@id" 'MsgBox(aUh.UpdateCommand.CommandText) aUh.UpdateCommand.ExecuteNonQuery() тут все работает.. затем мне нужно выполнить запрос к совсем другой таблице.. я использую SQLCommand - и получаю ошибку.. Коннекшн остается открытым.. Хотелось бы узнать - как избавиться от этой ошибки или можно ли в датаадаптере настроенном на одну таблицу выполнить запрос к другой таблице? лучше бы конечно 1-ый вариант.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 15:54 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Покажите побольше кода, лучше весь где упоминается данный Connection Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:04 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
На новую форму я перетащил нужную мне таблицу из Server Explorer. Создались SQLConnection и датаадаптер. Назвал их cUh и aUh соответственно. Юзер в форме заполняет поля и жмет Ок. Вот код: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Внесем изменения... Dim MyCommand As New OleDb.OleDbCommand cUh.Open() Try aUh.UpdateCommand.Parameters.Clear() If ttn.Text = "" Then aUh.UpdateCommand.Parameters.Add("@ttn", DBNull.Value) Else aUh.UpdateCommand.Parameters.Add("@ttn", ttn.Text) End If If am.Text = "" Then aUh.UpdateCommand.Parameters.Add("@am", DBNull.Value) Else aUh.UpdateCommand.Parameters.Add("@am", am.Text) End If 'Перевозчик... If Org.SelectedValue = Nothing Then 'Or Not IsNumeric(cbCargo.SelectedValue) Then aUh.UpdateCommand.Parameters.Add("@org", DBNull.Value) Else aUh.UpdateCommand.Parameters.Add("@org", Org.SelectedValue) End If aUh.UpdateCommand.Parameters.Add("@duh", Me.DateTimePicker1.Value) If por.Text = "" Then aUh.UpdateCommand.Parameters.Add("@por", DBNull.Value) Else aUh.UpdateCommand.Parameters.Add("@por", por.Text) End If aUh.UpdateCommand.Parameters.Add("@duhs", Me.DateTimePicker2.Value) 'Проверим выбрано ли Судно в комбобоксе... If cbSudno.SelectedValue = Nothing Then 'Or Not IsNumeric(cbCargo.SelectedValue) Then aUh.UpdateCommand.Parameters.Add("@sudno", DBNull.Value) Else aUh.UpdateCommand.Parameters.Add("@sudno", cbSudno.SelectedValue) End If aUh.UpdateCommand.Parameters.Add("@id", id.Text) aUh.UpdateCommand.CommandText = _ "UPDATE Uhod SET ttn_uh=@ttn, auto_uh=@am, perevozchik=@org, data_uh=@duh, " & _ "poruchenie=@por, data_uh_sudna=@duhs, sudno=@sudno where id_prih=@id" 'MsgBox(aUh.UpdateCommand.CommandText) aUh.UpdateCommand.ExecuteNonQuery() Catch ex As Exception MsgBox("Изменения не записаны.") End Try 'Поместим запись в архив... If CheckBox1.Checked = True Then 'Try MsgBox(cUh.ConnectionString) 'MyCommand.Connection.ConnectionString = cUh.ConnectionString MyCommand.Parameters.Clear() MyCommand.Parameters.Add("@arch", CheckBox1.Checked) MyCommand.CommandText = "update Priem " + _ "set archive=@arch" 'MsgBox(MyCommand.CommandText) 'MsgBox(cUh.State) MyCommand.ExecuteNonQuery() ' Catch ex As Exception ' MsgBox("Запись в архив не добавлена!") ' End Try End If cUh.Close() Me.Close() End Sub До использования мною SQLCommand все работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:24 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Connection программно я нигде не меняю... даже его не трогаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:25 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
может здесь разгадка. пытаюсь программно присвоить коннекш и получаю (см. рис). Хотя у меня SQLConnection, SQLCommand.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:54 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
авторDim MyCommand As New OleDb.OleDbCommand Это не SQL Command Вот Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 17:27 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Я руками ничего не писал - все создавал перетаскиванием.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:08 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
но в уголках написано sql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:09 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Сделал так.. ... aUh.UpdateCommand.CommandText = _ "UPDATE Uhod SET ttn_uh=@ttn, auto_uh=@am, perevozchik=@org, data_uh=@duh, " & _ "poruchenie=@por, data_uh_sudna=@duhs, sudno=@sudno where id_prih=@id" 'MsgBox(aUh.UpdateCommand.CommandText) aUh.UpdateCommand.ExecuteNonQuery() Catch ex As Exception MsgBox("Изменения не записаны.") End Try 'Поместим запись в архив... If CheckBox1.Checked = True Then Try aUh.UpdateCommand.Parameters.Clear() aUh.UpdateCommand.Parameters.Add("@arch", CheckBox1.Checked) aUh.UpdateCommand.Parameters.Add("@datarch", DateTimePicker3.Value) aUh.UpdateCommand.Parameters.Add("@id", id.Text) aUh.UpdateCommand.CommandText = "update Priem " + _ "set archive=@arch, data_archive=@datarch where id_pr=@id" aUh.UpdateCommand.ExecuteNonQuery() MsgBox("Запись добавлена в архив!") Catch ex As Exception MsgBox("Запись в архив не добавлена!") End Try Единственное смущает что в одном адаптере идет обращение к двум разным таблицам.. Правильно ли это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:13 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Единственное смущает что в одном адаптере идет обращение к двум разным таблицам.. Правильно ли это? С одной стороны если работает, то правильно. С другой стороны это нарушение логики. У вас название DataAdapter aUh = uhod, ну тогда и работайте только с таблицей uhod, а для другой таблицы сделайте другой DataAdapter. Я так понимаю у вас не очень хорошо замешался код построенный мастером и ваш код. ИМХО: Если код который делает мастер не устраивает, то все делаем сами. P.S. Есть и еще другие причины использовать разные DataAdapter ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:36 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
У вас название DataAdapter aUh = uhod, ну тогда и работайте только с таблицей uhod, а для другой таблицы сделайте другой DataAdapter Спасибо, я тоже к этому склонялся.. Вы развеяли мои сомнения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:45 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
авторЯ руками ничего не писал - все создавал перетаскиванием.. А, что, в Button1_Click его мастер занёс??? авторPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Внесем изменения... Dim MyCommand As New OleDb.OleDbCommand cUh.Open() Try aUh.UpdateCommand.Parameters.Clear() ..... ..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:49 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
vladgrig авторЯ руками ничего не писал - все создавал перетаскиванием.. А, что, в Button1_Click его мастер занёс??? авторPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Внесем изменения... Dim MyCommand As New OleDb.OleDbCommand cUh.Open() Try aUh.UpdateCommand.Parameters.Clear() ..... ..... Действительно.. Прощу прощения, лопухнулся.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:51 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
Я думаю, сдесь и кроется ошибка, если перетащил что то на форму - зачем объявлять это всё в процедурах, всё и так объявлено в коде, сгенереном мастером... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 09:59 |
|
||
|
ExecuteNonQuery: Connection property...
|
|||
|---|---|---|---|
|
#18+
vladgrigЯ думаю, сдесь и кроется ошибка, если перетащил что то на форму - зачем объявлять это всё в процедурах, всё и так объявлено в коде, сгенереном мастером... Вы абсолютно правы.. получилось. Спасибо vladgrig, спасибо Sa. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 10:13 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32599981&tid=1438841]: |
0ms |
get settings: |
10ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 258ms |
| total: | 406ms |

| 0 / 0 |
