Member 12267555 Ответов: 2

Как я могу сделать это отношение между таблицами


у меня есть таблица в доступе

Таблица № 1 Содержание
Names , Students grade
qassem . 300
noor    . 280


Таблица № 2 содержание

schoolsName , Students grade
aaaaaaa   .   290
bbbbbbb    . 270
ccccccc    . 250


я хочу связать эти таблицы с нами в C# 2012 visual studio

Когда выпускные классы учеников откроют им все школы

После этого каждый ученик открывает свой выбор по заданной ему оценке

Я не могу ссылаться на них
спасибо
я Египтянин
Немного моих знаний по английскому языку

Sergey Alexandrovich Kryukov

Непонятный. У вас есть реляционная база данных? Если вы хотите выразить какое-то отношение, вы должны каким-то образом описать это отношение. В вашем примере нет никаких признаков каких-либо отношений.

Также трудно помочь вам, потому что трудно понять, что является вашим фоном и что вы используете. В реляционной модели отношения устанавливаются с помощью уникальных ключей и внешних ключей...

—СА

Maciej Los

Доступ - это реляционная база данных. Вы можете определить отношения между таблицами, Сергей ;)

Sergey Alexandrovich Kryukov

Ах, Доступ... Возможно, мне немного трудно определить "доступ "как"доступ". :-)
Спасибо.
Что ж, верно; как я уже сказал, никаких отношений не указано...
—СА

Maciej Los

Я не уверен на 100%. Это мое предположение...
Да, вы правы, нет никакой связи между определенными таблицами.

Maciej Los

В данный момент я не вижу никакой связи между таблицами!

2 Ответов

Рейтинг:
5

OriginalGriff

Проблема в том, что для того, чтобы установить связь между таблицами, они должны иметь общее значение. Это как MP3: у него есть название, но у него также есть музыкант (или группа), который его создал. Таким образом, вы могли бы иметь два стола:
Художники:

ID    ArtistName
1     Lana Del Ray
2     Coldplay
...
Поскольку группа или исполнитель, скорее всего, выпустят более одного трека, имеет смысл хранить их в своей собственной таблице - иначе вы будете дублировать название группы снова и снова.
И трековый стол:
Треков:
ID    ArtistID   TrackName
1     1          Gods and Monsters
2     1          Ride
3     2          Paradise
4     2          Fix You
...

И вы можете установить внешний ключ отношения между треками и исполнителями на треках.Артист и художники.столбец id.
Это позволяет вам получать соответствующую информацию:
SELECT a.ArtistName, t.TrackName
FROM Tracks t
JOIN Artists a ON t.ArtistID=a.ID
И это возвращает вас:
Gods and Monsters  Lana Del Ray
Ride               Lana Del Ray
Paradise           Coldplay
Fix You            Coldplay
...
Но если у вас нет "связывающего столбца" ArtistsID, то нет никакого способа "соединить" эти две таблицы.

But...in в вашем примере вам вообще не нужна "ссылка".
То, что вы хотите сделать, это проверить каждый класс ученика против минимального значения, которое школы примут, и показать, в какие школы ученик может пойти.
Это всего лишь простой SQL-запрос:
SELECT Students.StudentName, Schools.SchoolName FROM Students, Schools
WHERE Students.Grade >= Schools.MinGrade
И это дает вам:
StudentName	SchoolName
qassem	    aaaaaaa
qassem	    bbbbbbb
qassem	    ccccccc
noor	    bbbbbbb
noor	    ccccccc


Member 12267555

Хорошо тогда я хочу получить ruselt в текстовом поле
что я могу сделать

OriginalGriff

Какой результат? Результат я покажу?
Как вы получаете доступ к базе данных? Это имеет значение для того, что вы делаете с данными впоследствии.
Но...Почему текстовое поле? Это таблица данных, так почему бы не использовать элемент управления отображением на основе сетки?

Рейтинг:
17

Member 3892343

Вам нужен первичный ключ в главной таблице и внешний ключ в подробной таблице, затем из SQL Server Management studio вы выполняете соединение для этих 2 ключей и в VB .Net вы делаете то же самое соединение с 2 объектами bindingsource.