я создаю приложение ac #, которое может сохранять данные в реляционной базе данных сервера sql, и я не знаю, почему внешние ключи не заполняются «они заполнены None», я думал, что они будут заполнены автоматически, если я создамсвязи между таблицами, я не создал код, который все равно их сохраняет, пожалуйста, кто-нибудь имеет какое-либо представление об этой проблеме.
Я попытался создать код в моем приложении c #, чтобы заполнить, взяв основнойключ из первой таблицы, который будет сохранен, затем назначьте его внешнему ключу, но он не работает
public static bool dataInsertVisiteur(Visiteur c)
{
// creation d'un return default
bool IsSuccess = false;
// connection avec la base de données
SqlConnection conn = new SqlConnection(MyConnStrng);
try
{
conn.Open();
// la requête SQL pour insertion des données
// table Visiteur
string sql1 = "INSERT INTO Visiteur (Nom_Visiteur, Prénom_Visiteur, EmailAdresse, CellPhoneNumber) VALUES (@Nom_Visiteur, @Prénom_Visiteur, @EmailAdresse, @CellPhoneNumber)";
// creation des commandes SQL
SqlCommand cmd1 = new SqlCommand(sql1, conn);
// creation du parameter add data
// parametrs table visiteur
#region parametrs table visiteur
cmd1.Parameters.AddWithValue("@Nom_Visiteur", c.NomVisiteur);
cmd1.Parameters.AddWithValue("@Prénom_Visiteur", c.PrénomVisiteur);
cmd1.Parameters.AddWithValue("@EmailAdresse", c.EmailAdresse);
cmd1.Parameters.AddWithValue("@CellPhoneNumber", c.CellPhoneNumber);
#endregion
//ouverture de la connection avec la base de données
#region table visiteur
int rows1 = cmd1.ExecuteNonQuery();
if (rows1 > 0)
{
IsSuccess = true;
}
else
{
IsSuccess = false;
}
#endregion
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
}
return IsSuccess;
}