参数化的SQL语句能够在一定程度上防止SQL注入,但是对于带自增列的表插入时如何获得自增列的值,大部分的写法是在SQL语句后面加上这么一句:"select @@Identity as id",然后在调用sqlcommand的ExecuteScalar方法来读取到id的值,也就是插入数据后自增列的值.

  但是我觉得这种写法其实是把两句sql放到一个string里面了,总觉着有些不太"优雅",我从网上找了这么一个写法:"insert into 表名 (列名) output inserted.ID values (输入参数)",然后还是执行sqlcommand的ExecuteScalar方法,就会得到自增列的值了.