Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/25: Рейтинг темы: голосов - 25, средняя оценка - 4.96
0 / 0 / 1
Регистрация: 01.10.2015
Сообщений: 155

Сравнение id с DBNull

05.12.2015, 18:43. Показов 4655. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть код на С#:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
        public void InsertData(string Surname, string Name)
        {
            string conStr = "server=localhost;user=root;" +
                            "database=mydb;password=admin;";
            int idMax;
 
            using (MySqlConnection con = new MySqlConnection(conStr))
            {
                try
                {
                    string sql = "INSERT INTO people_table (id,Surname, Name)" +
                                 "VALUES (@id,@Surname, @Name)";
                    string maxId = "SELECT MAX(id) AS id FROM people_table ";
                    con.Open();
                    MySqlCommand cmd = new MySqlCommand(sql, con);
                    MySqlCommand cmd2 = new MySqlCommand(maxId, con);
                    idMax = Convert.ToInt32(cmd2.ExecuteScalar());
 
                    //создаем параметры и добавляем их в коллекцию
                    cmd.Parameters.AddWithValue("@id", Convert.ToInt32(idMax) + 1);
                    cmd.Parameters.AddWithValue("@Surname", Surname);
                    cmd.Parameters.AddWithValue("@Name", Name);
                    cmd.ExecuteNonQuery();
                }
 
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                finally
                {
                    if (con.State == ConnectionState.Open)
                        con.Close();
                }
            }
Как мне реализовать заполнение таблицы, если там данных нет? Ошибка: НЕВОЗМОЖНО ВЫПОЛНИТЬ ПРИВЕДЕНИЕ ДАННОГО ОБЪЕКТА ИЗ DBNull К ДРУГОМУ ТИПУ.
Помогите пожалуйста
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.12.2015, 18:43
Ответы с готовыми решениями:

C# проблема с System.DBNULL
try { FbCommand cmd = new FbCommand(sql, connection); adapter = new FbDataAdapter(cmd); ...

DBNull несмотря на то, что ячейка не пустая
Ситуация такая, есть столбец с различными значениями. Я эти самые значения пытаюсь считать (смотреть код ниже). Простые значения вроде 3...

DBNull при попытке сравнить значения
Вот такой кусок кода if (!DBNull.Value.Equals(cmd.Parameters)) extcode =...

2
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18304 / 14228 / 5368
Регистрация: 17.03.2014
Сообщений: 28,902
Записей в блоге: 1
05.12.2015, 18:51
Hasancheg, в рамках данного кода можно поступить так:
C#
1
2
object idResult = cmd2.ExecuteScalar();
idMax = idResult == DBNull.Value ? 0 : Convert.ToInt32(idResult);
Однако правильнее использовать auto_increment колонку чтобы MySQL сам назначал ID.
1
0 / 0 / 1
Регистрация: 01.10.2015
Сообщений: 155
05.12.2015, 18:59  [ТС]
OwenGlendower, СПАСИБО
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.12.2015, 18:59
Помогаю со студенческими работами здесь

Ошибка преобразования System.DBnull в стринг
Всем здравствуйте. DataGridView инициализирована базой данных. Все поля базы данных строковые. В полях базы данных допускается...

Запрос выдает исключение DBNull при сравнивании с DateTime
Всем доброго времени суток! Есть метод проверяющий отсутствие книги в библиотеке. При сравнении времени выскакивает исключение DBNull...

НЕВОЗМОЖНО выполнить приведение данного объекта из DBNull к другому типу
Считываю данные из грида, и там где грид с галочкой, читаю как булевскую переменную, при верном значении при открытии новой формы...

Ошибка: Приведение типа DBNull к типу String является недопустимым
В чём может быть проблема с базой (таблицей), если в созданном для базы приложении хочу осуществить поиск в таблице DataGridView, но...

Трехслойная архитектура для ADO NET, возвращение DBNull и мелочи
Здравствуйте. Прочитав эту статью про трехслойную архитектуру доступа к данным, решил уже наконец научиться писать всё нормально и по...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru