SqlParameter[] para = {new SqlParameter("@id",SqlDbType.char}
para[0].value=user.id;
和
SqlParameter[] para = {new SqlParameter("@id",user.id}
一个定了参数的类型,一个没定,从各个方面来讲有什么优势,看了一下它的7个重载方法,没有类型和值一起定义的方法。从字面上初步判断SqlDbType是不是和数据库的字段类型有关?
我都习惯了定类型的写法,不定类型总感觉别扭,想找到不同啊?请大虾们指教
恩,有关系的,比如说,如果你数据表中原来userid为int型,现在要改为nvarchar型,你这一改的话,对于定类型的你也得改为如SqlDbType.Nvarchar的,想想如果你很多地方都用到了userid的话,岂不是其他地方的userid类型都要改,而对于第二种你就直接改Model中的一个userid的类型就行了。
仅个人见解,供参考……
声明了SqlDbType,提交前将对数据做一次转换。最好加上类别长度,可以过滤用户输入的字符。安全性比较高。