请解释c#语句 mycommand.Parameters.Add(new SqlParameter("@id", SqlDbType.NVarChar, 11));
具体说说Add的用法和("@id",SqlDbType.NVarChar,11));的意义...
具体说说Add的用法 和("@id", SqlDbType.NVarChar, 11));的意义
展开
2个回答
展开全部
string id="aaaa";
string sql="select * from aa where id=@id";
sqlcommand mycommand=new sqlcommand(sql,conn); //conn 是sqlconnection
这里@id就是参数
你必须用mycommand.parameters.add("@id",sqldbtype.nvarchar,11).value=id;
// add("给谁匹配",数据类型,长度) .value=id <- 匹配的值
这样的 就把id的给匹配到sql语句中
//这个方法安全,
// 已过时
// 用 addwithvalue("@id",id) 这个简单 不过不能处理时间类型
// string sql="select * from aa where id="+id;
//和上面的一样。就不用写地下的parameter了
//不过不安全
string sql="select * from aa where id=@id";
sqlcommand mycommand=new sqlcommand(sql,conn); //conn 是sqlconnection
这里@id就是参数
你必须用mycommand.parameters.add("@id",sqldbtype.nvarchar,11).value=id;
// add("给谁匹配",数据类型,长度) .value=id <- 匹配的值
这样的 就把id的给匹配到sql语句中
//这个方法安全,
// 已过时
// 用 addwithvalue("@id",id) 这个简单 不过不能处理时间类型
// string sql="select * from aa where id="+id;
//和上面的一样。就不用写地下的parameter了
//不过不安全
追问
非常感谢你地回答 我还想问一下 sqldbtype.nvarchar,11是什么意思呢
追答
这个是匹配字段的数据类型,长度
nvarchar 可变长度 unicode字符数据
指定最大长度为11
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询