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

БД и просмотр информации из таблицы

10.08.2012, 12:42. Показов 1668. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начал изучать С# и попытался создать программу в которой можно вести учет населения. Создал таблицу id (первичный ключ), ФИО, номер телефона и т.д (данных много). Данные в таблицу могу занести, но просматривать все столбики в общей таблице не удобно. хотелось бы, чтобы можно было щелкнуть на определенном человеке (ФИО) и раскрывалась форма с его полной информацией. Посоветуйте как это сделать?
Вопрос по организации поиска (по ФИО, дате записи человека, году рождения т .д.), как это вообще прописать?
А так же есть вопрос по выбору пола. Через какую функцию лучше сделать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.08.2012, 12:42
Ответы с готовыми решениями:

Просмотр текстовой информации
Здравствуйте! Подскажите пожалуйста, как сделать так, что-бы при выполнении кода: def showrecords(): # Records recordstable =...

Просмотр информации о батарее ноутбука
Привет :) Возможно кто-то знает и поможет в таком вопросе: нужно получить инфо о батарее - напряжение , ёмкость и т.д. естестыенно в C++...

просмотр информации перед публикацией
Привет всем. У меня есть страничка запросов, если ее можно так назвать, в общем суть в том, что пользователь вводит данные (заголовок,...

6
 Аватар для PingWiN0x20
55 / 55 / 8
Регистрация: 13.05.2010
Сообщений: 105
10.08.2012, 14:55
Самое первое, что в голову приходит:
1) заполняем ComboBox (или ListBox, как удобнее) значениями фамилий. Выбрать их можно так:
SQL
1
SELECT DISTINCT([FIO]) FROM [TABLE] ORDER BY [FIO]
Такой запрос поддерживают все известные мне базы данных. Возвращает список фамилий (без дублей из-за DISTINCT) в отсортированном виде.
2) При щелчке на конкретного человека в комбобоксе выполняем такой запрос:
SQL
1
SELECT * FROM [TABLE] WHERE [FIO] = '<выбраное имя>'
ну и помещаем это в грид.
Как хранить пол решайте сами. Самое простое - в базе создайте boolean поле. true - мужчина, false = женщина. Можно интежерами: 1-мужчина, 2-женщина, 3-транс, и т.д.

P.S.: сразу предупреждаю - придумайте более надежный способ идентифицировать человека (что-то типа СНИЛС или ИНН), т.к. однофамильцы в реальной базе встречаются ООООЧЕНЬ часто! И даже с одинаковыми инициалами.
1
0 / 0 / 0
Регистрация: 08.10.2010
Сообщений: 12
13.08.2012, 08:22  [ТС]
Попытался я ввести запрос, но что то видно не так делаю. вот скрины.
Забил я значит запрос в Лист бокс SELECT * FROM [people] WHERE [Фамилия] = '<выбраное имя>'
Но вместо вывода подробной информации из таблицы, у меня пропадает даже список, тех кто в ней существует. Запрос ка кто получился отдельной кнопкой. хотелось бы, через дабл клик сделать и вывод в отдельной форме. Не могли бы на общедоступном языке объяснить, как это сделать?
Миниатюры
БД и просмотр информации из таблицы  
0
 Аватар для PingWiN0x20
55 / 55 / 8
Регистрация: 13.05.2010
Сообщений: 105
13.08.2012, 14:01
Ну постараюсь общедоступным языком
Имеем некую базу данных. Например, MS Access. Она имеет три поля: FIO, ADDR, TEL. Имя, адрес, телефон.
При загрузке программы (или в любой другой момент, по желанию) она достаёт из базы список людей. С точки зрения кода примерно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
//Создаём подключение
OleDbConnection connection = new OleDbConnection(ConnectionString);
//Открываем его
connection.Open();
//строка запроса
string SQL = "SELECT DISTINCT(FIO) FROM TABLE ORDER BY FIO";
//Создаём команду...
OleDbCommand cmd = new OleDbCommand(SQL, connection);
//и выполняем её в ридер
OleDbDataReader rdr = cmd.ExecuteReader();
//Читаем ридер и кидаем все в listFIO например
while(rdr.Read()) listFIO.Items.Add(rdr["FIO"].ToString());
rdr.Close();
Всё, теперь у нас есть список имен в листбоксе listFIO.
Дальше механизм такой же точно. Только в запрос добавляются конструкции WHERE.
0
 Аватар для PingWiN0x20
55 / 55 / 8
Регистрация: 13.05.2010
Сообщений: 105
13.08.2012, 14:23
Решил, что проще и быстрее показать на примере. Накатал на скорую руку проектик. По исходникам всё должно быть понятно. Если нет - спрашивайте не стесняйтесь. Я не комментировал некоторые очевидные (на мой взгляд) вещи.
P.S.: как Вы и просили, обращение в базу происходит при дабл-клике.
Вложения
Тип файла: zip CyberForum.zip (29.9 Кб, 31 просмотров)
1
0 / 0 / 0
Регистрация: 08.10.2010
Сообщений: 12
14.08.2012, 10:51  [ТС]
Спасибо огромное конечно Вам, что вы со мной возюкаетесь, но не могли бы Вы посмотреть мою базу и там подправить дабл клик? Попробовал в своей, что то похожее сделать так и не получилось.. Добавление пользователей вроде прикрутил, через форму 2, но пока не оч корректно сохраняет, хотя когда первый вариант делал. было норм. но это подправлю потом.
А вывод подробной Информации о человеке вообще хотелось бы прикрутить в третью форму.
Вложения
Тип файла: rar BD2.rar (202.9 Кб, 25 просмотров)
0
 Аватар для PingWiN0x20
55 / 55 / 8
Регистрация: 13.05.2010
Сообщений: 105
14.08.2012, 11:26
Цитата Сообщение от Naglec Посмотреть сообщение
что то похожее сделать так и не получилось
Разумеется, не получилось, я всё делал в "ручном" режиме, а у Вас адаптеров понатыкано. Это называется мышко-кодерство. Вы так в жизни не разберетесь. + Я не могу ничем помочь в Вашем конкретном случае, ибо SQL Server у меня не стоит (и не будет стоять), а переписывать код под SQLite / MySQL / Access - ну Вы поняли )).
Не надо так обильно удобрять форму контролами! Создайте простенький проект, научитесь соединяться с базой / запрашивать данные из базы / отправлять данные в базу... Не пытайтесь сделать сразу рабочий вариант (судя по второй форме именно этим и занимаетесь).
Если хотите, можем продолжить общение в режиме "проблема - вариант решения". Писать за вас программы я не буду.

Цитата Сообщение от Naglec Посмотреть сообщение
вывод подробной Информации о человеке вообще хотелось бы прикрутить в третью форму
Ну если вы в отдельную форму запилили добавление, что уж чтение точно Вам по силам. Читайте внимательно документацию к компонентам, которыми пользуетесь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.08.2012, 11:26
Помогаю со студенческими работами здесь

Запуск двух потоков и просмотр системной информации о физической и виртуальной памяти процесса
Разработать программу, в которой есть возможность запуска двух потоков и просмотр системной информации о физическом и виртуальную память...

Расчёт и просмотр таблицы
Помогите пожалуйста решить задачку в Excel(срочно) Создать автоматизированную систему для выплаты пособий на детей. На листе 2...

Как запретить просмотр таблицы?
есть база с программным интерфейсом, пользователями вводом пароля и так далее. но там же в таблицах хранятся пароли к пользователям кто...

PhpMyAdmin просмотр кода созданной таблицы
Всем привет подскажите если это возможно,как посмотреть mysql код созданной таблицы?

Просмотр файлов всегда в режиме таблицы
Можно ли сделать, чтобы во всех окнах Проводника файлы всегда отображались только в режиме таблицы? Про &quot;помнить параметры...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru