Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
tani4ka26
0 / 0 / 0
Регистрация: 07.11.2012
Сообщений: 3
1

Как записать данные из SQL таблицы в массив

07.11.2012, 21:25. Просмотров 1723. Ответов 2
Метки нет (Все метки)

У меня вопрос:
Я создала клас для сохранения в него SQL таблицы. И потом в него записую данные, но виводит ошибку: System NullReferenceException: Object reference not set to an instance of an object. Подскажите пожалуйста как это исправить.
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
public void Get_Data_to_Class()
        {
            SqlConnection connection = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=" + "D:\\3 курс\\курсовий проект\\Airport.mdf" + ";Integrated Security=True;Connect Timeout=30;User Instance=True");
            DataTable dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter("Select * from airport", connection);
            try
            {
                connection.Open();
                da.Fill(dt);
                if (dt != null)
                {
                    Class_Airport[] mas = new Class_Airport[dt.Rows.Count];
                    for (int i = 0; i <= dt.Rows.Count - 1; i++)
                    {
                        mas[i].ID = Convert.ToInt32(dt.Rows[i]["ID"]);                      
                        mas[i].place_of_departure = dt.Rows[i]["place_of_departure"].ToString();
                        mas[i].departing_place = dt.Rows[i]["destination_place"].ToString();
                        mas[i].flight = dt.Rows[i]["flight"].ToString();
                        mas[i].time_of_departure = dt.Rows[i]["time_of_departure"].ToString();
                        mas[i].time_of_arriving = dt.Rows[i]["time__of_arriving"].ToString();
                        string temp = dt.Rows[i]["days_of_week"].ToString();
                        temp = temp.Replace(",", "");
                        switch (temp[0])
                        {
                            case '1': mas[i].days_of_week = "Понеділок";
                                break;
                            case '2': mas[i].days_of_week = "Вівторок";
                                break;
                            case '3': mas[i].days_of_week = "Середа";
                                break;
                            case '4': mas[i].days_of_week = "Четвер";
                                break;
                            case '5': mas[i].days_of_week = "П'ятниця";
                                break;
                            case '6': mas[i].days_of_week = "Субота";
                                break;
                            case '7': mas[i].days_of_week = "Неділя";
                                break;
                            default: return;
                        }
                        for (int j = 1; j < temp.Length; j++)
                            switch (temp[i])
                            {
                                case '1': mas[i].days_of_week += "\nПонеділок";
                                    break;
                                case '2': mas[i].days_of_week += "\nВівторок";
                                    break;
                                case '3': mas[i].days_of_week += "\nСереда";
                                    break;
                                case '4': mas[i].days_of_week += "\nЧетвер";
                                    break;
                                case '5': mas[i].days_of_week += "\nП'ятниця";
                                    break;
                                case '6': mas[i].days_of_week += "\nСубота";
                                    break;
                                case '7': mas[i].days_of_week += "\nНеділя";
                                    break;
                                default: return;
                            }
                        mas[i].number_of_stops = int.Parse(dt.Rows[i]["number_of_stops"].ToString());
                        mas[i].stops = dt.Rows[i]["stops"].ToString();
                        mas[i].price = int.Parse(dt.Rows[i]["price"].ToString());
                        mas[i].class_of_plane = dt.Rows[i]["class"].ToString();
                        mas[i].airlines = dt.Rows[i]["airlines"].ToString();
                    }
                }
 
            }
            catch (Exception error)
            {
                MessageBox.Show(error.ToString());
            }
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2012, 21:25
Ответы с готовыми решениями:

как записать данные из таблицы SQL в массив?
Всем привет! У меня есть обычный массив и SQL таблица с данными. Мне надо найти...

Записать данные столбца из таблицы в массив
Есть datagridview с 4 столбцами, 4 столбец состоит из чисел типа double, нужно...

Как перебрать все данные с таблицы sql?
Создаю форму авторизации. Есть три формы:вход,регистрация и окно программы. ...

Как правильно передать данные из таблицы DataGridView в SQL базу данных
Здравствуйте. Есть таблица DataGridView которая содержит данный которые...

Как программно вывести данные из таблицы базы ms sql на форму в dataGridView
Ребят, подскажите как программно вывести данные из таблицы базы ms sql на форму...

2
turbanoff
Эксперт Java
4017 / 3752 / 741
Регистрация: 18.05.2010
Сообщений: 9,329
Записей в блоге: 11
Завершенные тесты: 1
07.11.2012, 21:40 2
Между 14 и 15 строкой, добавьте новую:
C#
1
mas[i] = new Class_Airport();
Выделение память под массив объектов не создает сами объекты, это необходимо делать самостоятельно.
1
tani4ka26
0 / 0 / 0
Регистрация: 07.11.2012
Сообщений: 3
07.11.2012, 22:15  [ТС] 3
Спасибо большое, вы мне очень помогли
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2012, 22:15

Как с помощью MonthCalendar вывести в DataGridView с sql таблицы данные с определенной датой?
Всем доброго времени суток! Подскажите пожалуйста как с помощью MonthCalendar...

Как пробежаться по БД и записать данные в массив?
В программировании не профи, по этому такой вопрос: Есть БД, где первый...

Как данные типа Double записать в массив?
Здравствуйте, очень нужно помощь. У меня есть бд Access, в ней есть таблица,...


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

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

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