当我运行这个方法 GetNewID() 它应该从数据库返回 max Product_Id + 1 。因此,如果数据库中的 Max Product_Id 是 20,那么下一个应该是 21。这很好。
但是当数据库中没有记录并且它为空时,不起作用。我尝试过使用不同的 select 语句和一些 if 语句,但没有奏效。您对我如何解决这个问题有任何想法吗?提前致谢。
public static int GetNewId()
{
string selectString = @"SELECT MAX(Product_Id) FROM Products";
try
{
newId= 0;
connection = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=DB;Integrated Security=SSPI;");
connection.Open();
SqlCommand cmdSelectLastId = new SqlCommand(selectString, connection);
newId = Convert.ToInt32(cmdSelectLastId.ExecuteScalar());
}
finally
{
if (connection != null)
{
connection.Close();
}
}
return newId + 1;
}