【发布时间】:2019-02-11 16:16:07
【问题描述】:
我有两张桌子FILM(Id, Title, Director, Year, Category) 和Record(Id, Film_id)
FILM 表中的Id 用作Film_id 中Record 表中的外键。
我想在两个表中同时插入数据。如何用 INSERT 构造 sql 查询?
using (var connection = new MySqlConnection(constring))
{
connection.Open();
using (var cmdDataBase = connection.CreateCommand())
{
cmdDataBase.CommandText = "INSERT INTO film(Title, Director, Year, Category) VALUES (@Title, @Director, @Year, @Category) ";
cmdDataBase.Parameters.Add(new MySqlParameter("@Title", fm.Title));
cmdDataBase.Parameters.Add(new MySqlParameter("@Director", fm.Director));
cmdDataBase.Parameters.Add(new MySqlParameter("@Year", fm.Year));
cmdDataBase.Parameters.Add(new MySqlParameter("@Category",n));
cmdDataBase.ExecuteNonQuery();
}
}
【问题讨论】:
-
我不明白你的目的是什么。哪两个标签?我在 Record 表中只看到 ID 和 Film_Id。
-
为什么要在两个不同的表中保存相同的值?
-
@ErayBalkanli - 似乎他想用外键关系同时填充
film和record两个表。所以他的问题基本上是How to insert a record with foreign relations?- 至少我是这么理解的:) -
只需在记录表中添加第二个插入。
-
@jdweng 但是外键是什么,那么他如何将表
film的id填充到相关表record的列film_id中