我需要像标题所说的那样完成,我已经创建了如下所示的存储过程。
CREATE PROCEDURE FindMaxCustID
AS
SELECT max(CustID)
FROM Customer
现在我只需要调用它并将1添加到返回的CustID中,然后将其显示在我的txtCustID文本框中。这就是我到目前为止......
Clear();
command.Connection = conn;
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "FindMaxCustID";
但现在我卡住了,我不知道如何编码。
答案 0 :(得分:0)
这样的事情可以帮助你执行你的程序并返回一个int(CustId),你可以随意增加它。
using (SqlConnection connection = new SqlConnection(connectionString)) {
using (SqlCommand cmd = new SqlCommand("FindMaxCustID", connection)) {
cmd.CommandType = CommandType.StoredProcedure;
connection .Open();
var result = cmd.ExecuteScalar(); // you'll get the first cell on the first row. Cast to the correct type
}
}
答案 1 :(得分:0)
我将存储过程更改为:
SELECT ISNULL(MAX(custId),0)+ 1 FROM Customer
然后只是运行Command类ExecuteScalar方法并获取值。但是,正如之前指出的那样,使用存储过程对此来说太过分了。