asp.net C#命名参数SqlParameter详解
来源:互联网 发布:淘宝完美产品是真的吗 编辑:程序博客网 时间:2024/05/17 17:18
DBHelper:
执行查询
有效的select语句
返回SqlDataReader public static SqlDataReader ExecuteReader(string sql) { SqlConnection con = new SqlConnection(constring); con.Open(); SqlCommand cmd = new SqlCommand(sql, con); return cmd.ExecuteReader(CommandBehavior.CloseConnection); }
执行查询带参数
有效的select语句
返回SqlDataReader public static SqlDataReader ExecuteReader(string sql,SqlParameter parameter) { SqlConnection con = new SqlConnection(constring); con.Open(); SqlCommand cmd = new SqlCommand(sql, con); cmd.Parameters.Add(parameter); return cmd.ExecuteReader(CommandBehavior.CloseConnection); }
执行查询带参数数组
有效的select语句
返回SqlDataReader public static SqlDataReader ExecuteReader(string sql, SqlParameter[] parameters) { SqlConnection con = new SqlConnection(constring); con.Open(); SqlCommand cmd = new SqlCommand(sql, con);
AddRange添加数组 cmd.Parameters.AddRange(parameters); return cmd.ExecuteReader(CommandBehavior.CloseConnection); }
执行增删改
影响的行数
public static int ExecuteNonQuery(string sql)
{ using (SqlConnection con = new SqlConnection(constring))
{ con.Open(); SqlCommand cmd = new SqlCommand(sql, con); return cmd.ExecuteNonQuery(); } }
public static int ExecuteNonQuery(string sql,SqlParameter[] parameters)
{ using (SqlConnection con = new SqlConnection(constring))
{ con.Open(); SqlCommand cmd = new SqlCommand(sql, con); //foreach (SqlParameter item in parameters)
{
cmd.Parameters.Add(item);
}
cmd.Parameters.AddRange(parameters); return cmd.ExecuteNonQuery(); } } public static int ExecuteNonQuery(string sql, SqlParameter parameter)
{
using (SqlConnection con = new SqlConnection(constring)) { con.Open(); SqlCommand cmd = new SqlCommand(sql, con); cmd.Parameters.Add(parameter);
return cmd.ExecuteNonQuery(); } }
DAL:public static int Insert(company model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into company"); strSql.Append("(FullName,ShortName,Keywords,Description,Type,Property,Style,Capital,Size,Details,Province,City,Address,Postalcode,Tel,Fax,Mailbox,Url,Link,createtime,Poss,Linkman,Product,Userid)"); strSql.Append(" values ("); strSql.Append("@FullName,@ShortName,@Keywords,@Description,@Type,@Property,@Style,@Capital,@Size,@Details,@Province,@City,@Address,@Postalcode,@Tel,@Fax,@Mailbox,@Url,@Link,@Createtime,@Poss,@Linkman,@Product,@Userid)"); SqlParameter[] parameters = { new SqlParameter("@FullName",SqlDbType.VarChar), new SqlParameter("@ShortName",SqlDbType.VarChar), new SqlParameter("@Keywords",SqlDbType.VarChar), 。。。。。。。。。。。。。。。。。。 };
new SqlParameter( PARAM_PASSWORD, password== null ? (object)DBNull.Value : (object)password ), parameters[0].Value = model.FullName; parameters[1].Value = "";
model.ShortName; parameters[2].Value = "";
model.Keywords; parameters[3].Value = model.Description; parameters[4].Value = model.Type; parameters[5].Value = model.Property; parameters[6].Value = model.Style; parameters[7].Value = model.Capital; parameters[8].Value = model.Size; //如果model.Details为空的话在执行的时候就会报“需要@Details参数,但未提供该参数”所以不能parameters[9].Value = model.Details;这样写 parameters[9].Value = model.Details == null ? (object)System.DBNull.Value : model.Details; //parameters[9].Value = model.Details; 。。。。。。。。。。。。。。。。。。。 return DBHelper.ExecuteNonQuery(strSql.ToString(), parameters); }public static List SelectTop5(string type) { //asp.NET SqlParameter关于Like的传参数无效问题问题在于Sql给参数自动添加了单引号。实际上在Sql,将like的代码解析成为了like '%'type'%' ",所以要写成下面的形式 string sql = "select top 5 * from company where poss='通过' and type like @type order by createtime desc"; string seach = "%"+type+"%"; SqlDataReader reader = DBHelper.ExecuteReader(sql, new SqlParameter("@type",ObjToStr(seach))); 。。。。。。。。。。。。。。。。。。。}public static int UpdateComInfo(company model) { string sql11 = "update company set FullName=@FullName,ShortName=@ShortName,Keywords=@Keywords,Description=@Description,[Type]=@Type,[Property]=@Property,Style=@Style,Capital=@Capital,[Size]=@Size,Details=@Details,Province=@Province,City=@City,Address=@Address,Postalcode=@Postalcode,Tel=@Tel,Fax=@Fax,Mailbox=@Mailbox,Url=@Url,Link=@Link,createtime=@Createtime,Poss=@Poss,Linkman=@Linkman,Product=@Product,Userid=@Userid where Id=@Id"; SqlParameter[] parameters = { new SqlParameter("@FullName",ObjToStr(model.FullName)), new SqlParameter("@ShortName",ObjToStr(model.ShortName)), new SqlParameter("@Keywords",ObjToStr(model.Keywords)), 。。。。。。。。。。。。。。。。。。。 }; return DBHelper.ExecuteNonQuery(sql11,parameters); }public static company SelectById(string id) { string sql = "select * from company where Id=@id"; SqlDataReader reader = DBHelper.ExecuteReader(sql, new SqlParameter("@id", ObjToStr(id))); 。。。。。。。。。。。。。。。。}
- asp.net C#命名参数SqlParameter详解
- asp.net C#命名参数SqlParameter详解
- asp.net sqlparameter 传参数模糊查询
- Asp.Net------------sqlparameter
- asp.net SqlParameter关于Like的传参数无效问题
- asp.net SqlParameter关于Like的传参数无效问题
- asp.net SqlParameter 根据条件 有选择的添加参数
- asp.net 中 sqlparameter 的使用
- C# out、ref、params、可变参数、命名参数详解
- 黑马程序员之ADO.NET学习笔记:SqlParameter(Sql参数)
- asp.net sqlparameter,dataset合并排序的用法
- ASP.NET命名空间参考手册—C#编程篇
- C#定义命名参数
- C#命名参数
- asp.net命名空间
- asp.net 命名规范
- Asp.Net 命名规则
- ASP.NET命名空间
- opencv学习笔记(十三)利用cvResize函数调整图片尺寸
- [Leetcode]Leetcode 27:Remove Element
- ubuntu 安装vim失败解决办法
- 一个apple开发账号怎么在多个Mac上配置
- nginx 配置多目录
- asp.net C#命名参数SqlParameter详解
- 安卓服务器端开发请教
- mybatis插件原理
- 一个子目录伪静态规则书写问题
- ASP查询数据库中语句的变量为何出错 ?求助。。。。
- 如何保证从服务器端获取的版本号保持同步
- 爬取小说网站小说信息以及内容
- dataframe文件写入pickle文件和写入csv效率对比
- 小米手机得到IP是10.0.2.15 ,但实际是192.168.0.131解决办法