我在数据库中创建了一个表tblAttendence
,该表有2列:Date
(datetime
)和RegNo
(int
)。我必须从表单的标签中插入当前日期和时间和注册号。
C#代码:
private void btnMarkAtt_Click(object sender, EventArgs e)
{
using (SqlConnection sqlCon = new SqlConnection(connectionString))
{
sqlCon.Open();
SqlCommand sqlCmd = new SqlCommand("MarkAtt", sqlCon);
sqlCmd.CommandType = CommandType.StoredProcedure;
sqlCmd.Parameters.AddWithValue("@Date", DateTime.Now);
sqlCmd.Parameters.AddWithValue("@RegNo", int.Parse(lblRegNo.Text));
sqlCmd.ExecuteNonQuery();
MessageBox.Show("Attendance marked successfully!");
}
}
存储过程MarkAtt
:
ALTER PROCEDURE [dbo].[MarkAtt]
@Date DATETIME,
@RegNo INT
AS
INSERT INTO tblAttendence(Date, RegNo)
VALUES (@Date, @RegNo)
代码中没有显示错误。调试不会停止以显示错误。当我按下按钮时,什么也没发生(既没有插入数据,也没有显示消息框)。
我似乎无法找出正在发生的事情。连接字符串是正确的(我以相同的形式使用了它并且可以工作)。连接有问题吗?还是存储过程?还是我想念的其他东西?