我使用以下代码来获取比使用razor
的表中最大ID更多的代码@foreach (var top in db.Query("SELECT MAX(ID)+1 as ID FROM mytable"))
{
if (@top.ID == null) {@top.ID = 1; }
}
如果表为空,@ top.ID将返回null。我试图将其值设置为1,如果它为null。但是它在分配部分中显示错误。如何将@ top.ID的值分配给其他东西?或者,如果表为空,有没有办法使用sql查询将ID设置为1?
答案 0 :(得分:1)
您可以使用
select isnull(max(ID),1) from YourTable
但是,如果您尝试为新记录生成新ID,建议您最好使用identity
字段。