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

Не отображаются данные в Datagridview

16.03.2015, 10:35. Показов 2036. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Class Connect
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
using System.Text.RegularExpressions;
 
namespace Avtoservis2015
{
    class Connect
    {
        public SqlConnection con = new SqlConnection();
        public SqlCommand cmd = new SqlCommand();
        public SqlDataReader dr;
        public SqlDataAdapter da;
        //public DataSet ds;
 
 
 
        public Connect()
        {
            //89.235.232.73
            //opredeljaem stroku soedinenija
            string con_str = "Data Source=89.235.232.73;Initial Catalog=avtoservis;Persist Security Info=True;User ID=test;Password=test";//papka po umol4aniju bin/debug
            con.ConnectionString = con_str;
            cmd.Connection = con;
        }
        //metod dlja otkrqtija bazq
        public void conOpen()
        {
            con.Open();
        }
        //metod dlja zakritija soed
        public void conClose()
        {
            con.Close();
        }
        //dlja 4tenija datareader
        public SqlDataReader dataReader(string sql)
        {
            con.Open();
            //opredeljaem komandu 
            cmd.CommandText = sql;
            dr = cmd.ExecuteReader();
            return dr;
        }
 
        //metod dlja vypolnenija aktivnyh kommand
        public void exe_cmd(string sql)
        {
            con.Open();
            cmd.CommandText = sql;
            cmd.ExecuteNonQuery();
            con.Close();
        }
        //metod dlja vozvrashenija zapolnennoi tablicy
        public DataTable table(string sql)
        {
            cmd.CommandText = sql;
            //OPredeljaem kommandu dlja DataAdapter
            da.SelectCommand = cmd;
            //Poluchaem tablicu s dannymi
            DataTable tb = new DataTable();
            da.Fill(tb);
            return tb;
        }
 
 
        public bool CheckLoginPassword(string login, string password, string sql)
        {
 
            try
            {
 
                con.Open();
                cmd.CommandText = sql;
                dr = cmd.ExecuteReader();
                dr.Read();
                bool result = (int)dr[0] > 0 ? true : false;
                return result;
 
            }
 
            catch
            {
 
                throw;
 
            }
            finally
            {
 
                con.Close();
 
            }
 
 
        }
 
        public bool CheckLogin(string login, string sql2)
        {
 
            try
            {
 
                con.Open();
                cmd.CommandText = sql2;
                dr = cmd.ExecuteReader();
                dr.Read();
                bool result = (int)dr[0] > 0 ? true : false;
                return result;
 
            }
 
            catch
            {
 
                throw;
 
            }
            finally
            {
 
                con.Close();
 
            }
 
        }
 
        public bool CheckEmail(string email, string sql3)
        {
 
            try
            {
 
                con.Open();
                cmd.CommandText = sql3;
                dr = cmd.ExecuteReader();
                dr.Read();
                bool result = (int)dr[0] > 0 ? true : false;
                return result;
            }
 
            catch
            {
 
                throw;
 
            }
            finally
            {
 
                con.Close();
 
            }
 
        }
 
        public bool isValidEmail(string inputEmail)
        {
 
            string strRegex = @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}" +
                  @"\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\" +
                  @".)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
            Regex re = new Regex(strRegex);
 
            if (re.IsMatch(inputEmail))
 
                return (true);
 
            else
 
                return (false);
 
        }
 
        
 
        
 
    }
}
class Login Form

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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Avtoservis2015
{
    public partial class LoginForm : Form
    {
        public LoginForm()
        {
            InitializeComponent();
        }
 
        private void loginOkBtn_Click(object sender, EventArgs e)
        {
            if (loginBox.Text == null || loginBox.Text == "" || passwordBox.Text == null || passwordBox.Text == "")
            {
                MessageBox.Show("Fields with (*) are mandatory!");
                return;
            }
            else
            {
                try
                {
                    Connect connection = new Connect();
 
                    string sql = "SELECT COUNT(usrid) FROM users WHERE usrlogin='" + loginBox.Text.Trim() + "' AND usrpassword='" + passwordBox.Text.Trim() + "'COLLATE SQL_Latin1_General_CP1_CS_AS";
                    // MessageBox.Show(sql);
                    //cheking login and password 
                    if (connection.CheckLoginPassword(loginBox.Text, passwordBox.Text, sql))
                    {
                        this.Hide();
                        MainForm mainwindow = new MainForm(loginBox.Text.Trim());
                        // if all ok register user in database
                        mainwindow.ShowDialog();
                        //sql = "INSERT INTO users_time(usrlogin, visitortime) VALUES ('" + loginBox.Text.Trim() + "','" + DateTime.Now.ToString() + "')";
                        //connection.exe_cmd(sql);
                    }
                    else
                    {
                        //error
                        MessageBox.Show("Check your login or password", "Error");
                    }
                }
                catch (Exception exc)
                {
                    MessageBox.Show("Check your internet connection or SQL Server is down now");
                }
            }
        }
 
        private void loginCancelBtn_Click(object sender, EventArgs e)
        {
            this.Close();
        }
 
        private void loginBox_Enter(object sender, EventArgs e)
        {
            loginBox.Clear();
        }
 
        private void passwordBox_Enter(object sender, EventArgs e)
        {
            passwordBox.Clear();
        }
    }
}
MainForm class

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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data;
 
 
namespace Avtoservis2015
{
    public partial class MainForm : Form
    {
        string usrName;
        public MainForm(string usrName)
        {
            InitializeComponent();
            this.usrName = usrName;
        }
 
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            Application.Exit();
        }
 
        private void MainForm_Load(object sender, EventArgs e)
        {
            
 
            if (usrName != "admin")
            {
                tabControl1.TabPages.Remove(registrationTab);
                tabControl1.TabPages.Remove(managingTab);
            }
 
 
        }
 
        private void regCancelBtn_Click(object sender, EventArgs e)
        {
            regLoginTbx.Clear();
            regPasswordTbx.Clear();
            regNameTbx.Clear();
            regSurnameTbx.Clear();
            if (regPhoneTbx.Text != null || regPhoneTbx.Text != "")
            {
                regPhoneTbx.Clear();
            }
            regEmailTbx.Clear();
            tabControl1.SelectedTab = profileTab;
        }
 
        private void regOkBtn_Click(object sender, EventArgs e)
        {
            try
            {
                Connect connection = new Connect();
                //sqls for database
                string sql = "SELECT COUNT(usrid) FROM users WHERE usrlogin='" + regLoginTbx.Text.Trim() + "' AND usremail='" + regEmailTbx.Text.Trim() + "'";
                string sql2 = "SELECT COUNT(usrid) FROM users WHERE usrlogin='" + regLoginTbx.Text.Trim() + "'";
                string sql3 = "SELECT COUNT(usrid) FROM users WHERE usremail='" + regEmailTbx.Text.Trim() + "'";
                //if login and email are allready taken
                if (connection.CheckLoginPassword(regLoginTbx.Text, regEmailTbx.Text, sql))
                {
 
                    MessageBox.Show("This login or email allready used");
                    return;
 
                }
                //if login is allready taken
                if (connection.CheckLogin(regLoginTbx.Text, sql2))
                {
 
                    MessageBox.Show("This login allready used");
                    return;
 
                }
                //if email is allready taken
                if (connection.CheckEmail(regEmailTbx.Text, sql3))
                {
 
                    MessageBox.Show("This email allready used");
                    return;
 
                }
                //check email validation
                if (connection.isValidEmail(regEmailTbx.Text) == false)
                {
 
                    MessageBox.Show("Enter a valid email");
                    return;
 
                }
                //checking if all fields are empty or not.
                if (regLoginTbx.Text == null || regLoginTbx.Text == "" || regPasswordTbx.Text == null || regPasswordTbx.Text == "" || regNameTbx.Text == null || regNameTbx.Text == "" || regSurnameTbx.Text == null || regSurnameTbx.Text == "" || regEmailTbx.Text == null || regEmailTbx.Text == "")
                {
 
                    MessageBox.Show("All fields with (*) are mandatory!");
                    return;
 
                }
 
                else
                {
                    //if all ok register user
                    connection.exe_cmd("INSERT INTO users([usrlogin], [usrpassword], [usrname], [usrsurname], [usrphone], [usremail]) VALUES ('" + regLoginTbx.Text.Trim() + "','" + regPasswordTbx.Text.Trim() + "','" + regNameTbx.Text.Trim() + "','" + regSurnameTbx.Text.Trim() + "','" + regPhoneTbx.Text.Trim() + "', '" + regEmailTbx.Text.Trim() + "')");
                    MessageBox.Show("Registartion sucessfull :)");
 
                    regLoginTbx.Clear();
                    regPasswordTbx.Clear();
                    regNameTbx.Clear();
                    regSurnameTbx.Clear();
 
                    if (regPhoneTbx.Text != null || regPhoneTbx.Text != "")
                    {
                        regPhoneTbx.Clear();
                    }
                    regEmailTbx.Clear();
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show("Check your internet connection or SQL Server is down now");
            }
        }
 
 
        #region Enter textboxes and clear it
        private void regLoginTbx_Enter(object sender, EventArgs e)
        {
            regLoginTbx.Clear();
        }
 
        private void regPasswordTbx_Enter(object sender, EventArgs e)
        {
            regPasswordTbx.Clear();
        }
 
        private void regNameTbx_Enter(object sender, EventArgs e)
        {
            regNameTbx.Clear();
        }
 
        private void regPhoneTbx_Enter(object sender, EventArgs e)
        {
            regPhoneTbx.Clear();
        }
 
        private void regEmailTbx_Enter(object sender, EventArgs e)
        {
            regEmailTbx.Clear();
        }
 
        #endregion
 
        private void button1_Click(object sender, EventArgs e)
        {
 
        }
 
        private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            string id = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
            string header = dataGridView1.Columns[e.ColumnIndex].HeaderText;
            string endValue = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
            string sql = "UPDATE users SET [" + header + "]='" + endValue + "' WHERE [usrid] =" + id;
 
            Connect con = new Connect();
 
            con.exe_cmd(sql);
            MessageBox.Show("Changes have been saved");
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            //Connect con = new Connect();
 
            //string id = dataGridView1.CurrentRow.Cells[0].Value.ToString();
 
            //string sql = "DELETE FROM users WHERE [usrid]=" + id;
 
            //con.exe_cmd(sql);
            //this.dataGridView1.Refresh();
 
            Connect con = new Connect();
           
            DataTable tb = con.table("SELECT * FROM users");
           
            dataGridView1.DataSource = tb;
        }
    }
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.03.2015, 10:35
Ответы с готовыми решениями:

Не отображаются данные в DataGridView
Люди добрые, помогите!!! начал осваивать С#, из учебной БД пытаюсь получить данные. Если создавать DataGridView конструктором на форму...

Не отображаются данные в dataGridView?
Используется C# MySql Не отображаются данные в dataGridView. Пробовал три варианта запроса. Ни один не работает. string...

Не отображаются данные в DataGridView
Проблема достаточно глупая, но все же у меня решить ее не получилось. Проблема в следующем: у меня в бд есть данные. На форме...

5
 Аватар для m@cChe
45 / 45 / 26
Регистрация: 15.05.2013
Сообщений: 226
Записей в блоге: 1
16.03.2015, 10:39
ip1, самое время подружиться с отладчиком
0
0 / 0 / 0
Регистрация: 23.02.2013
Сообщений: 13
16.03.2015, 10:43  [ТС]
ссылка на объект не указывает на экземпляр объекта??
0
 Аватар для m@cChe
45 / 45 / 26
Регистрация: 15.05.2013
Сообщений: 226
Записей в блоге: 1
16.03.2015, 10:49
ip1, ну это самая тривиальная

Добавлено через 25 секунд
ip1, дебагер Вам точно должен помочь
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
16.03.2015, 10:51
Лучший ответ Сообщение было отмечено ip1 как решение

Решение

ip1, магический шар мне говорит, что ошибка происходит в следующей строке:
C#
1
da.SelectCommand = cmd;
Причина ошибки в том, что вы ни где не создаете объект, на который ссылается da. То есть, da содержит значение null.
1
0 / 0 / 0
Регистрация: 23.02.2013
Сообщений: 13
16.03.2015, 11:13  [ТС]
спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.03.2015, 11:13
Помогаю со студенческими работами здесь

Не отображаются данные из MySQL в Datagridview
Добрый день! Подскажите пожалуйста почему не отображаются данные в Datagridview? Чего только не пробовал private void...

Не отображаются данные в DataGridView
На форме расположен DataGridView связанный с BindingSource, который в свою очередь связан с классом PersonCollection, реализующим...

Не отображаются данные в dataGridView
Добрый день. Подключил через oledbDataAdapter базу данных .mdb. Сделал dataSet из двух столбцов. Подключил все это к dataGridView....

В DataGridView не отображаются данные из таблицы
Здравствуйте, помогите пожалуйста, не могу подключится к базе. На первый взгляд, всё сделал по примеру, но так и не получил данные из...

Не правильно отображаются связанные данные из БД в DataGridview
в DataGridview загружаю данные и таблицы БД (скрин 3), в таблице одна колонка подстановка данных из другой таблицы. Колонка ФИО связана с...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru