string sqlCommand5 = "select max(id) from VisitorLog";
SqlDataAdapter sqlDataAdapter5 = new SqlDataAdapter(sqlCommand5, conn);
DataSet ds5 = new DataSet();
sqlDataAdapter5.Fill(ds5);
if (ds5 != null && ds5.Tables[0].Rows.Count > 0)
{
string n = ds5.Tables[0].Rows[0][0].ToString();
if (n == "")
{
id = 1;
}
else
{
id = Convert.ToInt32(n) + 1;
}
}
我想做一個id遞增事件,可是我這個id遞增到10之後,就不再增加了,id加到10以後,全部為10。大神幫我看看,最好能幫我修改一下。
直接將你的id列定義為數據庫的遞增id。
或者將id列類型改為int。
你的問題是,id列是字符串。所以max(id)查詢出來的是按照ascii序排列的,那麼如果你的數據庫有 1 2 3 4 5 6 7 8 9 10這麼幾個數據,max(id)查詢出來的總是9。因為10的第一個字符'1' < '9'