Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 21.01.2020
Сообщений: 55
MS SQL

GridCotrol и связанные таблицы в БД MS SQL

16.02.2021, 18:07. Показов 1206. Ответов 5

Студворк — интернет-сервис помощи студентам
Winform есть 2 Grida. Вывожу на них связанные таблицы из БД MS SQL. Вот код:
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
string connectionString = ConfigurationManager.ConnectionStrings["connectionSIPiT"].ConnectionString;
 
        string command = "SELECT UserID, UserName, Login, idArm FROM Users";
 
        string command2 = "SELECT id, name FROM arm";
 
        sqlConnection = new SqlConnection(connectionString);
 
        SqlDataAdapter adapter = new SqlDataAdapter(command2, sqlConnection);
 
        SqlDataAdapter adapter1 = new SqlDataAdapter(command, sqlConnection);
 
        DataSet dataset1 = new DataSet();
 
        adapter.Fill(dataset1, "arm");
        adapter1.Fill(dataset1, "Users");
 
        DataColumn keyColumn = dataset1.Tables[0].Columns[0];
        DataColumn foreignKeyColumn = dataset1.Tables[1].Columns[3];
        dataset1.Relations.Add("armUsers", keyColumn, foreignKeyColumn);
 
        bindingSource1.DataSource = dataset1;
        bindingSource1.DataMember = "arm";
        bindingSource2.DataSource = bindingSource1;
        bindingSource2.DataMember = "armUsers";
        gridControl1.DataSource = bindingSource1;
        gridControl2.DataSource = bindingSource2;
Помогите пожалуйста, разобраться как в GridControl скрыть не нужные столбцы. Такие как Id) Может использовать DataTable? Если можно пример
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.02.2021, 18:07
Ответы с готовыми решениями:

Связанные таблицы SQL
Всем Здрасти:) Вобщим вопрос такой, есть две таблицы. Например: 1) users c полями(id,name,email,password) 2) info c...

sql server 2000 + связанные таблицы
Есть ли возможность создавать связанные таблицы sql server? если да то: 1.Как создавать связанные таблицы на sql server? 2. как...

Вопрос про связанные таблицы в SQL
База в SQL. Клиент на VB. в Клиентской части программы заполняется форма, в результате которой нужно занести одну запись в...

5
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
16.02.2021, 18:54
Если я правильно Вас понял, Вам вместо idArm нужно показывать его наименование, и все это в одном гриде.
Тогда у Вас будет единственный запрос:

а) Если могут быть пользователи без арм:

SQL
1
2
3
4
SELECT U.UserID, U.UserName, U.Login, A.name  
  FROM Users U
  LEFT JOIN arm A ON (U.idArm = A.id)
  ORDER BY U.UserName
либо

б) Не может быть пользователя без арм (т.е. при создании таблицы Users колонка idArm была указана с атрибутом REFERENCE arm(id) NOT NULL )
SQL
1
2
3
4
SELECT U.UserID, U.UserName, U.Login, A.name  
  FROM Users U, arm A
  WHERE U.idArm = A.id
  ORDER BY U.UserName
На "выходе" Вы получите набор данных (точнее, адаптер с этим набором), который можно "засунуть" в грид. Для прятания некоторых колонок (например UserID) используйте свойства соответствующей колонки в гриде.
0
1 / 1 / 0
Регистрация: 21.01.2020
Сообщений: 55
16.02.2021, 19:10  [ТС]
Как при помощи SQL запроса вывести это на 1 grid проблем то нет, а вот как вывести эти данные на 2 grida и при выборе одного значения в одном грузить все его привязки из другой таблицы.
Наверное можно обработать событие gridView1.GetRowCellValue(gridView1.Focu sedRowHandle и грузить данные не через SqlDataAdapter, а через SqlDataReader..
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
17.02.2021, 01:09
https://docs.microsoft.com/ru-... esktop-4.8
0
1 / 1 / 0
Регистрация: 21.01.2020
Сообщений: 55
17.02.2021, 08:10  [ТС]
Все не то.
Но я решил вопрос чуточку по другому, после присвоение
C#
1
bindingSource1
Внес изменения в сам грид
C#
1
(gridControl1.DefaultView as GridView).Columns[0].Visible = false;
Пока работает без нареканий
0
785 / 616 / 273
Регистрация: 04.08.2015
Сообщений: 1,713
17.02.2021, 09:48
MsGuns, недостаток вьюхи в том, что данные нельзя будет редактировать.
Adordin, используйте DataGridViewComboBoxColumn https://docs.microsoft.com/en-... ew=net-5.0
У вас будет один грид, в котором вместо idArm будет отображаться название, а в базу данных будет записываться id.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.02.2021, 09:48
Помогаю со студенческими работами здесь

DELPHI +MS SQL SERVER таблицы связанные
Люди подкожите как работать со связанными таблицами .... У меня таблицы : Безработные и Курсы(one-to-many) .. 1 )field Code primery...

Две связанные SQL таблицы в одном GridView
У меня есть две связанные таблицы SQL. Помогите как их отобразить в одном GridView, так чтоб как в старом добром access у каждой строки был...

Три и более DataGridView и связанные таблицы в MS SQL 2008
Здравствуйте, форумчане! Необходимо вывести три и более DatagridView на форму со связями с таблицами. Имеется база в ней 5 таблиц: ...

Можно ли добавлять записи в связанные таблицы при помощи SQL-запроса
Я столкнулся с таким вопросом можно ли добавлять записи в связанные таблицы при помощи SQL-запроса... ? Как это сделать это мышью я...

Две связанные таблицы и как задать условие Страна=Россия ? Нужен SQL запрос с INNER JOIN
В БД у меня есть две таблицы: Игрок и Рейтинг. Поле страна находится в таблице Рейтинг. Поля Фамилия, Имя, Отчество и т.д. в таблице Игрок....


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru