Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

БД - Книжка оценок / Подключение проекта к MySQL

  • Создать базу данных и настроить подключение проекта к MySQL.
  • Дата отправки отчёта: 13 июня 2017 г.
  • Задание выполнено: за 4 час. 00 мин.
  • Чему научился: Устанавливать дополнение .net mysql
    Находить ошибки.
  • Что было сложным: Разобраться с подключением. Подключение проходило, а я тупил, пока не поменял другой логин и не получил ошибку, что такого пользователя нет.
    А ошибка была в выполнении функции public MySqlDataReader Select(string query), где я забыл передать аргументы в  MySqlCommand cmd = new MySqlCommand(this.query, connection);

    Теперь не могу понять ошибку на скриншота. Какой где датаридер открыт?
    Ошибка в private void load_pupil_matrix() после ввода пароля ученика. Отрисовывается грид с уроками, а оценки не вставляет. Запрос сырой отрабатывает правильно и выдает 2 строки.

    Ошибка где-то тут при чтении.
    do read = sql.Select("SELECT subject_id, day, point FROM point WHERE pupil_id =" + my_pupil_id.ToString());
                while (db_error());
                while (read.Read())
  • Комментарии: Надо было всетаки сделать с самого нуля с сетевой бд, акцесс никто не использует.

    upd
    Внезапно стал смотреть работы по этому курсу у других и у Tekashnik нашел ответ.
    Оказывается надо после
                MySqlDataReader read;
                read = sql.Select("SELECT id, subject FROM subject ORDER BY subject");
                while (db_error()) ;
                int row = 0;

                while (read.Read())
                {
                    grid_points_pupil.Rows.Add();
                    grid_points_pupil["co_subject_ids", row].Value = read["id"].ToString();
                    grid_points_pupil["co_points_subjects", row].Value = read["subject"].ToString();
                    row++;
                }
    добавить read.Close();
    А я добавлял 
              do sql.Close();
                while (db_error());

    И вот как я должен был догадаться?
  • Оценка видео-уроку:
Отчёт от 10588 за БД - Книжка оценок / Подключение проекта к MySQL


Отчёт от 10588 за БД - Книжка оценок / Подключение проекта к MySQL




Оцени работу

 
Сохранить страницу:

8275. --
Tekashnik
Tekashnik
ответить
→  kalobyte  # БД - Книжка оценок / Подключение проекта к MySQL / 2017-06-13 06:09

))) Рад, что мой отчёт помог))) А я писал в комментариях, что курс не лёгкий))



Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Устанавливать дополнение .net mysql Находить ошибки.
Трудности: Разобраться с подключением. Подключение проходило, а я тупил, пока не поменял другой логин и не получил ошибку, что такого пользователя нет. А ошибка была в выполнении функции public MySqlDataReader Select(string query), где я забыл передать аргументы в  MySqlCommand cmd = new MySqlCommand(this.query, connection); Теперь не могу понять ошибку на скриншота. Какой где датаридер открыт? Ошибка в private void load_pupil_matrix() после ввода пароля ученика. Отрисовывается грид с уроками, а оценки не вставляет. Запрос сырой отрабатывает правильно и выдает 2 строки. Ошибка где-то тут при чтении. do read = sql.Select("SELECT subject_id, day, point FROM point WHERE pupil_id =" + my_pupil_id.ToString());             while (db_error());             while (read.Read())
Надо было всетаки сделать с самого нуля с сетевой бд, акцесс никто не использует. upd Внезапно стал смотреть работы по этому курсу у других и у Tekashnik нашел ответ. Оказывается надо после MySqlDataReader read; read = sql.Select("SELECT id, subject FROM subject ORDER BY subject"); while (db_error()) ; int row = 0; while (read.Read()) { grid_points_pupil.Rows.Add(); grid_points_pupil["co_subject_ids", row].Value = read["id"].ToString(); grid_points_pupil["co_points_subjects", row].Value = read["subject"].ToString(); row++; } добавить read.Close(); А я добавлял do sql.Close(); while (db_error()); И вот как я должен был догадаться?


Научился: хороший урок, научился  создавать структуру БД в MySQL, через консоль
Трудности: надеюсь, идея по созданию раздела консольных задач по БД, будет реализована.