Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
LMAO_12
0 / 0 / 0
Регистрация: 04.06.2016
Сообщений: 8
1

Оператор "+" для типов "String" и "System.Windows.Forms.ComboBox.ObjectCollection" не определен

09.05.2017, 14:04. Просмотров 465. Ответов 5
Метки нет (Все метки)

Доброго времени суток,подскажите решение проблемы
К комбобоксам привязал БД отображаются в них названия,но вноситься в базу должны ключи этих названий
Выглядит это следующим образом
Оператор "+" для типов "String" и "System.Windows.Forms.ComboBox.ObjectCollection" не определен

Код:
vb.net
1
2
3
4
5
6
7
8
9
10
11
12
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim MS As Long
        Dim MyConnection As New OleDbConnection
        MyConnection.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\7 вариант.accdb;"
        Dim MyCommand As New OleDbCommand
        MyCommand.Connection = MyConnection
        MyCommand.CommandText = "insert into Заказы(Код_работы,Код_работника,Код_клиента,) VALUES ('" + ComboBox1.Items + "','" + ComboBox2.Items + "','" + ComboBox3.Items + "')"
        MyConnection.Open()
        MyCommand.ExecuteNonQuery()
        MS = MsgBox("Заказ создан")
    End Sub
End Class
Он ругается на это Ошибка 1 Оператор "+" для типов "String" и "System.Windows.Forms.ComboBox.ObjectCollection" не определен. C:\Users\Илья\AppData\Local\Temporary Projects\WindowsApplication1\Form10.vb 23 33 WindowsApplication1
Делал по подобию от текстбоксов,но что то пошло не так
Как побороть?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.05.2017, 14:04
Ответы с готовыми решениями:

Оператор "&" для типов "String" и "c_auth.ClientPacket" не определен
Прошу помощи у экспертов. Фото все по порядку. 1.Невозможно преобразовать значение типа...

Невозможно преобразовать значение типа "string" в "System.Windows.Forms.Label"
Невозможно преобразовать значение типа "string" в "System.Windows.Forms.Label". Вот программа: в...

"Не удалось привести тип объекта "System.Int32" к типу "System.String"."
Добрый день! Делаю запрос к локальной базе данных. Пытаюсь получить последнюю строку. Но что-то...

Обработка "null" в MS Access "Приведение типа "|DBNull" к типу "String" является недопустимым"
Здравствуйте. Работаю с базой MS Access Вывожу в DataGridView таблицу Проблема следующая, если у...

"Приведение типа "|DBNull" к типу "String" при попытке загрузить данные из ячейки DataGridView в ComboBox
Доброго времени суток! Сама ошибка "Приведение типа "|DBNull" к типу "String" является...

5
ovva
2764 / 2272 / 553
Регистрация: 02.02.2013
Сообщений: 2,160
Записей в блоге: 2
09.05.2017, 21:19 2
Замените ComboBox1.Items на ComboBox1.SelectedValue ну и "+" лучше заменить на "&".
2
LMAO_12
0 / 0 / 0
Регистрация: 04.06.2016
Сообщений: 8
09.05.2017, 21:46  [ТС] 3
С вашим вариантом теперь ругается на "Ошибка синтаксиса в инструкции INSERT INTO."

Добавлено через 13 минут
ЗЫ нашел у себя ошибку,спасибо заработало

Добавлено через 16 секунд
ЗЫ нашел у себя ошибку,спасибо заработало
0
Замабувараев
349 / 355 / 93
Регистрация: 18.12.2014
Сообщений: 722
Записей в блоге: 1
09.05.2017, 22:04 4
Не создавайте запрос с помощью склейки строк, так как это небезопасно. Запрос следует создавать через параметры запроса.
vb.net
1
2
3
4
5
6
7
Dim objConnection As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\7 вариант.accdb;")
Dim command As New OleDbCommand("INSERT INTO Заказы(Код_работы,Код_работника,Код_клиента) VALUES (?, ?, ?)", ExcelConnection)
command.Parameters.Add("Значение кода работы")
command.Parameters.Add("Значение кода работника")
command.Parameters.Add("Значение кода клиента")
command.ExecuteNonQuery()
objConnection.Close()
5
AlexNorton
11 / 11 / 5
Регистрация: 30.04.2016
Сообщений: 145
10.05.2017, 20:38 5
Цитата Сообщение от Замабувараев Посмотреть сообщение
Не создавайте запрос с помощью склейки строк, так как это небезопасно.
Удобство использования Вашей конструкции просто очевидно, а не подскажете в чем заключается "небезопасность" так сказать - традиционной схемы? В двух словах для начинающих)))
А то что-то я за год первый раз такую реализацию встретил. Вся прога построена на запросах, подобных ТСу
0
Замабувараев
349 / 355 / 93
Регистрация: 18.12.2014
Сообщений: 722
Записей в блоге: 1
10.05.2017, 20:54 6
Цитата Сообщение от AlexNorton Посмотреть сообщение
в чем заключается "небезопасность"
SQL injection https://ru.wikipedia.org/wiki/%D0%92...BE%D0%B4%D0%B0
0
10.05.2017, 20:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2017, 20:54

Выражение типа "System.Windows.Forms.Control" не может быть выражением типа "System.Windows.Forms.Menu"
Перевёл проект с версии 2008 на версию 2010 Наткнулся при компиляции на кучу не объявленных...

"Text", импортированный из пространств имен или типов "System, System.Drawing", является неоднозначным
В Visual Studio 2010 при обработке строки с текстом появляется такая ошибка: "Text",...

Оператор "=" не задан для тип "DBNull" и строка "1".
Есть цикл, который проходит по списку компаний и смотрит, если у человека есть доступ - то в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru