我对C#很陌生,我已经搜遍了所有但我找不到问题的答案。
在我的应用程序中,我有一个表格,例如employee details
)第二个表格是leaves
。
我想要的是将employee details
表主键链接到leaves
表。
员工可以有很多叶子
因此,当我为leaves
插入employee
记录时,它应存储employee details
表格ID,当我使用leaves
搜索emid
表格时,它会显示所有内容他在datagridview中的leaves
。
员工详细信息表
emid
empno
emname
emjoindate
emmobile
emaddress
离开表
leaveid
emid
leavestartdate
leaveenddate
private void Save()
{
con = new SqlConnection(cs.DBConn);
con.Open();
string cb = "insert into leaves(leavestartdate,leaveenddate,notes) VALUES (@d1,@d2,@d3)";
cmd = new SqlCommand(cb);
cmd.Connection = con;
cmd.Parameters.Add(new SqlParameter("@d1", SqlDbType.Date, 31, "leavestartdate"));
cmd.Parameters.Add(new SqlParameter("@d2", SqlDbType.Date, 31, "leaveenddate"));
cmd.Parameters.Add(new SqlParameter("@d3", SqlDbType.NVarChar, 500, "notes"));
cmd.Parameters["@d1"].Value = txtstartdate.Text.Trim();
cmd.Parameters["@d2"].Value = txtenddate.Text.Trim();
cmd.Parameters["@d3"].Value = txtnotes.Text.Trim();
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
答案 0 :(得分:1)
你有没有尝试过使用select查询。因为从select查询中我们也可以这样做。
答案 1 :(得分:1)
您需要将emid
参数添加到insert query.
string cb = "insert into leaves(emid,leavestartdate,leaveenddate,notes) VALUES (@emid,@d1,@d2,@d3)";
然后设置参数@emid
然后您可以选择任意leaves
的{{1}}
emid
编辑:要从string cb = "select * from leaves where emid = @emid";
表中获取emname
和emmobile
,您可以使用此查询
employee details