Консультируйся с подмостками ты дружишь в SQL и C#

У меня есть этот формуляр:

introducir la descripción de la imagen aquí

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

Я знаю на Примари Кеи и Фореигн Кеис, только нуждаюсь в помощи / гиде в создании связи достигни указанная.

Это код, который я использую в моей настоящей консультации (класс студенты), как я это изменяю, чтобы использовать "INNER JOIN", и что консультация бросила данные о двух подмостках?

public static List BuscarEstudiante(String pnombre, String papellido)
    {
        List lista = new List();
        using (SqlCeConnection conexion = BDc.ObtnerCOnexion())
        {
            SqlCeCommand comando = new SqlCeCommand(string.Format("SELECT idEstudiantes, cedula, nombre, apellido, carrera, condicion, codProyecto FROM estudiantes WHERE nombre LIKE '%{0}%' and apellido LIKE '%{1}%'", pnombre, papellido), conexion);

            SqlCeDataReader reader = comando.ExecuteReader();

            while (reader.Read())
            {
                Estudiantes pestudiante = new Estudiantes();
                pestudiante.idEstudiantes = reader.GetInt32(0);
                pestudiante.cedula = reader.GetString(1);
                pestudiante.nombre = reader.GetString(2);
                pestudiante.apellido = reader.GetString(3);
                pestudiante.carrera = reader.GetString(4);
                pestudiante.condicion = reader.GetString(5);
                pestudiante.codProyecto = reader.GetInt32(6);

                lista.Add(pestudiante);
            }
            conexion.Close();
            return lista;
        }
    }

1
задан 25.03.2017, 20:10
2 ответа

Поскольку я понимаю queres знать, как делать relaci¦n студента, я проектирую.

обрежь объединять два подмостков посредством факела.

пример:

introducir la descripción de la imagen aquí

посредством ученика обрежь искать проекты, которые они считают распределенными. и посредством проекта обрежь получать распределенные ученики.

Actualizaci¦n.

я crear¦ - в промежуточную таблицу наверху Proyecto_Estudiante.

консультация в этой серьезной таблице.

select e.nombre, e.apellido from Proyecto_Estudiante эксперт pe inner join проект эксперт p on p.id=pe.proyecto_id inner join студент схвати и on и id=pe.estudiante_id where e.nombre like '%nombre %'

, и если queres использовать только эти 2 подмостков, в одной из них должно быть снабжать ссылками в другую и навязывать ему join. пример.

SELECT idEstudiantes, долговое обязательство, имя, фамилия, бег, условие, codProyecto FROM студенты схвати и inner join Проект эксперт p on p.id=e.idproyecto WHERE назвал LIKE '% {0} %' and фамилия LIKE '% {1} %'

1
ответ дан 24.11.2019, 10:38
SELECT t1.NombreProyecto,t2.NombreEstudiante 
FROM tablaProyecto t1, tablaAlumno t2 
WHERE t1.Id = t2.Id 
ORDER BY  t1.NombreProyecto asc

С этой консультацией ты наполняешь datatable и этот ты распределяешь это datasource datagridview

introducir la descripción de la imagen aquí

0
ответ дан 24.11.2019, 10:38

Теги

Похожие вопросы