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

Вывод данных MySql в динамические textbox-ы

13.05.2016, 17:49. Показов 4303. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет Всем! Проблема следующая

Есть mysql база

Вывожу ее в datagrid

Суть программы { нажимаем кнопку -> подключаемся к бд-> выводится вся база в dataGridView}

Что нужно:
Выводить в textBox значения нужной мне колонки
То есть если в dataGridView1 вывелось 10 строк, нужно чтобы создалось 10 текст боксов в столбик и в каждом выводилось по порядку все 10 строк нужной мне колонки

как это реализовать??

вот код вывода в dataGridView

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
        private void button2_Click(object sender, EventArgs e)
        {
            
 
            try
            {
 
 
                MySqlConnection mcon = new MySqlConnection("datasource=sql7.freesqldatabase.com;port=3306;username=username;password=password");
                MySqlDataAdapter mda = new MySqlDataAdapter("select * from sql7119361.Data", mcon);
 
                mcon.Open();
                DataSet ds = new DataSet();
                mda.Fill(ds, "Data");
                dataGridView1.DataSource = ds.Tables["Data"];
                
                
 
                mcon.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.05.2016, 17:49
Ответы с готовыми решениями:

Как установить LCID. Вывод данных из баз данных в динамические страницы
Я хостюсь на зарубежном хостинге. И отсюда все проблемы (но есть и свои плюсы). У меня есть база SQL Server 2000. При динамическом...

Ajax отправка данных из формы в базу mysql и вывод из базы mysql
$(function() { $('#chat_submit').click(function(e) { e.preventDefault(); var chat_name =...

Внесение данных из textBox в таблицу MySQL
При внесении данных из текстового поля в таблицу - в таблице отображается "???" Текст пишу на русском, если писать на английском -...

13
1 / 1 / 1
Регистрация: 14.04.2016
Сообщений: 37
15.05.2016, 13:18  [ТС]
Поднял! Птомогите
0
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
27.07.2016, 19:40
Жаль, что тема не прошла дальше, сам столкнулся с небольшой проблемкой.
Может отчасти и Вам поможет.
Задача в следующем:Вывести все строки из таблицы данных в динамические textbox.
При написании кода использовались материалы из темы Ответы на 7 самых частых вопроса по WinForms.
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
InitializeComponent();
            TextBox[] tb = new TextBox[10];
 
            using (SqlConnection con = new SqlConnection(connectionString))
            {
                SqlCommand com = new SqlCommand("SELECT * FROM Goroda", con);
                try
                {
                 
                    con.Open();
                    SqlDataReader dr = com.ExecuteReader();
                                      
                        while (dr.Read())
                        {
                            for (int i = 0; i < tb.Length; i++)
                            {
                                tb[i] = new TextBox();
                                tb[i].Location = new Point(101, 50 + i * 30);
                                tb[i].Name = "textBox" + i.ToString();
                                tb[i].Size = new Size(75, 23);
                                tb[i].TabIndex = i;
                                tb[i].Text = dr[i].ToString();
                                Controls.Add(tb[i]);
                               
                            }
                          
                        }
Часть кода приведена выше. Однако при исполнении проги создаются textbox только со значения первой строки таблицы данных. Не пойму, как вывести в динамические textbox все строки из таблицы данных.
0
79 / 102 / 44
Регистрация: 12.05.2015
Сообщений: 476
28.07.2016, 00:27
Цитата Сообщение от vitaliy_marshal Посмотреть сообщение
Однако при исполнении проги создаются textbox только со значения первой строки таблицы данных
Это не так, остальные текстбоксы находятся под первыми текстбоксами и их просто не видно, в этом просто убедиться:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int a = 0; // счетчик строк
while (dr.Read())
{
    for (int i = 0; i < tb.Length; i++)
    {
        tb[i] = new TextBox();
        tb[i].Location = new Point(101 + i * 100, 50 + a * 30);
        tb[i].Name = "textBox" + i.ToString();
        tb[i].Size = new Size(75, 23);
        tb[i].TabIndex = i;
        tb[i].Text = dr[i].ToString();
        Controls.Add(tb[i]);
 
    }
    a++;
}
0
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
28.07.2016, 01:22
Была такая мысль, но поставив точки останова на строках
C#
1
2
tb[i].Text = dr[i].ToString();
 Controls.Add(tb[i]);
увидел что обращение идет трижды (по количеству столбцов в таблице данных).
Получается, что считываются только три столбца первой строки с выводом их содержания в свои textbox.
Со счетчиком строк не совсем понятно - получается, что математические операции идут только в данном случае с нулем.
0
79 / 102 / 44
Регистрация: 12.05.2015
Сообщений: 476
28.07.2016, 01:55
Цитата Сообщение от vitaliy_marshal Посмотреть сообщение
Была такая мысль
Проверьте, это действительно так.
Цитата Сообщение от vitaliy_marshal Посмотреть сообщение
увидел что обращение идет трижды (по количеству столбцов в таблице данных).
SqlDataReader читает таблицу построчно, в каждой строке количество записей соответствует количеству столбцов в таблице.
Цитата Сообщение от vitaliy_marshal Посмотреть сообщение
получается, что математические операции идут только в данном случае с нулем.
Нет, мы же счетчик увеличиваем в конце каждой прочитанной строки.
0
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
28.07.2016, 02:19
Подскажите пожалуйста, что делаю не так. Вот полный код
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
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.Collections;
using System.Data.SqlClient;
using System.Data.Common;
 
namespace Karta
{
    public partial class MainForm : Form
    {
        
        string connectionString = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\City.mdf;Integrated Security=True;database=City";
 
        public MainForm()
        {
            InitializeComponent();
            TextBox[] tb = new TextBox[9];
            
            //ArrayList allFirstLink = new ArrayList();
            using (SqlConnection con = new SqlConnection(connectionString))
            {
                SqlCommand com = new SqlCommand("SELECT * FROM Goroda", con);
                try
                {
                 
                    con.Open();
                    SqlDataReader dr = com.ExecuteReader();
                   
                        int a = 0; // счетчик строк
                        while (dr.Read())
                        {
                            for (int i = 0; i < tb.Length; i++)
                            {
                                tb[i] = new TextBox();
                                tb[i].Location = new Point(101 + i * 100, 50 + a * 3);
                                tb[i].Name = "textBox" + i.ToString();
                                tb[i].Size = new Size(75, 23);
                                tb[i].TabIndex = i;
                                tb[i].Text = dr[i].ToString();
                                Controls.Add(tb[i]);                                
                            }
                            a++;
                        }                                        
                }
                catch
                {
                }                
        }                      
        }
    }
}
0
79 / 102 / 44
Регистрация: 12.05.2015
Сообщений: 476
28.07.2016, 02:23
vitaliy_marshal, а у вас в таблице сколько строк?
0
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
28.07.2016, 02:36
их 10
0
79 / 102 / 44
Регистрация: 12.05.2015
Сообщений: 476
28.07.2016, 02:58
vitaliy_marshal, и какой результат выполнения?
Вот у меня получается такая табличка
Миниатюры
Вывод данных MySql в динамические textbox-ы  
0
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
28.07.2016, 03:07
вот что выходит
Миниатюры
Вывод данных MySql в динамические textbox-ы   Вывод данных MySql в динамические textbox-ы  
0
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
28.07.2016, 03:11
файл проекта
Вложения
Тип файла: zip Karta.zip (1.82 Мб, 16 просмотров)
0
79 / 102 / 44
Регистрация: 12.05.2015
Сообщений: 476
28.07.2016, 03:45
vitaliy_marshal, никогда не игнорируйте блок catch и не оставляйте его пустым. Иначе вы не увидите ошибки.
В вашем случае, происходит выход за границы массива.
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
while (dr.Read()) // dr.FieldCount = 3, количество записей в строке
{
    for (int i = 0; i < tb.Length; i++) // tb.Length = 30, цикл выполнит 30 итераций
    {
        tb[i] = new TextBox();
        tb[i].Location = new Point(101 + i * 100, 50 + a * 3);
        tb[i].Name = "textBox" + i.ToString();
        tb[i].Size = new Size(75, 23);
        tb[i].TabIndex = i;
        tb[i].Text = dr[i].ToString(); // на 4 итерации dr[3] - не существует, ошибка
        Controls.Add(tb[i]);
    }
    a++;
}

Исправьте и выхода за границы массива не будет.
C#
1
for (int i = 0; i < dr.FieldCount; i++)
1
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 7
28.07.2016, 03:53
Спасибо, работает!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.07.2016, 03:53
Помогаю со студенческими работами здесь

Внесение данных из textBox в таблицу MySQL
При внесении данных из текстового поля в таблицу - в таблице отображается &quot;???&quot; Текст пишу на русском, если писать на английском - все...

Вывод данных из базы данных access в TextBox
На форме допустим 10 текстбоксов, в них надо вывести данные из записи таблицы базы данных, допустим со столбцами Kol_0 , Kol_1 , Kol_2...

Вывод данных из базы данных MySQL в PHP в виде дерева.
У нас в сети решили сделать портал-базу по рефератам. Все я сделал остались две траблы, про первую я здесь и пишу. Итак, имеется база с...

Вывод необходимых данных из базы данных MySQL
Всем привет. Подскажите как проще всего реализовать вывод необходимых данных из бд, проблема в следующем: На сайтах висят формы заказа...

Вывод данных из mysql. Максимум 10 данных на страницу!
Имеется ниже код, который выводить данные из mysql в таблицу (пользователю) в личный кабинет! Сейчас этих данных в mysql очень много,...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru