DBHelper:

/// <summary>
/// 执行查询
/// </summary>
/// <param name="sql">有效的select语句</param>
/// <returns>返回SqlDataReader</returns>
public static SqlDataReader ExecuteReader(string sql)
{
SqlConnection con = new SqlConnection(constring);
con.Open();
SqlCommand cmd = new SqlCommand(sql, con);
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
/// <summary>
/// 执行查询带参数
/// </summary>
/// <param name="sql">有效的select语句</param>
/// <returns>返回SqlDataReader</returns>
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);
}
/// <summary>
/// 执行查询带参数数组
/// </summary>
/// <param name="sql">有效的select语句</param>
/// <returns>返回SqlDataReader</returns>
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);
} /// <summary>
/// 执行增删改
/// </summary>
/// <param name="sql"></param>
/// <returns>影响的行数</returns>
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),
。。。。。。。。。。。。。。。。。。
}; //第二种: SqlParameter[] parameters = new SqlParameter[]{}; parameters[].Value = model.FullName;
parameters[].Value = ""; //model.ShortName;
parameters[].Value = "";// model.Keywords;
parameters[].Value = model.Description;
parameters[].Value = model.Type;
parameters[].Value = model.Property;
parameters[].Value = model.Style;
parameters[].Value = model.Capital;
parameters[].Value = model.Size;
//如果model.Details为空的话在执行的时候就会报“需要@Details参数,但未提供该参数”所以不能parameters[9].Value = model.Details;这样写
parameters[].Value = model.Details == null ? (object)System.DBNull.Value : model.Details;
//parameters[9].Value = model.Details;
。。。。。。。。。。。。。。。。。。。
return DBHelper.ExecuteNonQuery(strSql.ToString(), parameters);
} public static List<company> 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)));
。。。。。。。。。。。。。。。。。。。
}

C# SQL增删查改的更多相关文章

  1. SQL增删查改语句

    一.增:有4种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> insert into sheet1 va ...

  2. SQL增删查改注意的事项

    一.新增 1.增加的时候,bit字段要用“0,1”表示false,和true: 2.时间字段,用单引号包括,里面要遵循基本时间格式: 3,不能为标识列(自动编号列)插入数据(特殊情况下:set ide ...

  3. sql增删查改

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  4. 常用SQL语句(增删查改、合并统计、模糊搜索)

    转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html 常用SQL语句 首行当然是最基本的增删查改啦,其中最重要的是查. ...

  5. Sql Server的艺术(一) 视图的增删查改

    视图是从一个或者多个表中查询数据的另一种方式.利用视图可以集中.简化定制数据库,同时还能保障安全. 视图其结构和数据是建立在对应的查询基础上的.和表一样,视图也是包括几个被定义的数据列和多个数据行,但 ...

  6. SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)

    SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)-DML 1.SQL INSERT INTO 语句(在表中插入) INSERT INTO 语句用于向表中插入新记录. SQL I ...

  7. SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码)

    SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码) 概述: 表由行和列组成,每个表都必须有个表名. SQL CREATE TABLE 语法 CREATE TABLE tabl ...

  8. EF各版本增删查改及执行Sql语句

    自从我开始使用Visual Studio 也已经经历了好几个版本了,而且这中间EF等框架的改变也算是比较多的.本篇文章记录下各个版本EF执行Sql语句和直接进行增删查改操作的区别,方便自己随时切换版本 ...

  9. EF增删查改加执行存储过程和sql语句,多种方法汇总

    ActionUrl c = new ActionUrl() { ActionName="test", RequestUrl="/123/123", SubTim ...

随机推荐

  1. [前端 2]常用的JQuery和Dom页面取值与赋值

    导读:书到用时方恨少,需要基础知识的时候,才悔恨自己没有总结学习好.前段时间调了好长时间的页面,突然发现自己之前不怎么在意的取值和赋值,真的是自己一个很薄弱的地方,有时候查半天都找不到一个对的,现在用 ...

  2. MFC启动和关闭线程

    1. 启动线程: CWinThread* AfxBeginThread( 线程函数,this ); 2.通常导致线程终止的两种情况是:控制函数退出或不允许线程完成运行.如果字处理器使用后台打印线程,若 ...

  3. Excel 代码

    package com.chinabase.common.util; import java.io.FileInputStream; import java.io.FileOutputStream; ...

  4. 代码轮子之很简单但是挺管用的基于C# Task的模拟并发的代码

    代码轮子之很简单但是挺管用的基于C# Task的模拟并发的代码

  5. Javascript 常用系统内置函数

    1:在数组指定位置插入元素 array.splice(2, 0, "three");   //在索引2的位置,删除0个元素后,插入元素“three” 例子: // 原来的数组 va ...

  6. Becoming a Hacker...

    This is my dream... http://catb.org/~esr/faqs/hacker-howto.html 黑客的精神 世上仍有大量迷人的事情等待解决 同样的问题不应被重复处理两次 ...

  7. ios中,长按Webview中的图片

    我们所要解决的问题如题目所示:ios中,长按Webview中的图片,将图片保存到本地相册. 解决方案:对load的html网页,执行js注入,通过在webview中执行js代码,来响应点击事件,通过j ...

  8. [原]My first Python

    我的第一个Python程序: print 'hello world' raw_input ("print any key to continue...") 在python3.4下应 ...

  9. [leetcode]_Reverse Integer

    经历了三道树的题后,完全崩溃中,急需一道非树图的题来挽救信心. 题目:反转数字.input : 123 , output : 321. 思路:直接,没什么好说的. 自己代码:很龊,有大量的冗余信息,还 ...

  10. ajax+php+mysql更新

    html代码 <input type="button" id="quxiao" class="quxiao" name="q ...