//绑定数据
public SQLHelper() { } #region 建立数据库连接对象 /// /// 建立数据库连接 /// ///
返回一个数据库的连接SqlConnection对象
public static SqlConnection init() { try { conn = new SqlConnection(connstr); if (conn.State != ConnectionState.Open) { conn.Open(); } } catch (Exception e) { throw new Exception(e.Message.ToString()); } return conn; } #endregion #region 设置SqlCommand对象 /// /// 设置SqlCommand对象 /// /// SqlCommand对象 /// 命令文本 /// 命令类型 /// 参数集合 private static void SetCommand(SqlCommand cmd, string cmdText, CommandType cmdType, SqlParameter[] cmdParms) { cmd.Connection = conn; cmd.CommandText = cmdText; cmd.CommandType = cmdType; if (cmdParms != null) { cmd.Parameters.AddRange(cmdParms); } } #endregion #region 执行相应的sql语句,返回相应的DataSet对象 /// /// 执行相应的sql语句,返回相应的DataSet对象 /// /// sql语句 ///
返回相应的DataSet对象
public static DataSet GetDataSet(string sqlstr) { DataSet ds = new DataSet(); try { init(); SqlDataAdapter ada = new SqlDataAdapter(sqlstr, conn); ada.Fill(ds); conn.Close(); } catch (Exception e) { throw new Exception(e.Message.ToString()); } return ds; } #endregion #region 执行相应的sql语句,返回相应的DataSet对象 /// /// 执行相应的sql语句,返回相应的DataSet对象 /// /// sql语句 /// 表名 ///
返回相应的DataSet对象
public static DataSet GetDataSet(string sqlstr, string tableName) { DataSet ds = new DataSet(); try { init(); SqlDataAdapter ada = new SqlDataAdapter(sqlstr, conn); ada.Fill(ds, tableName); conn.Close(); } catch (Exception e) { throw new Exception(e.Message.ToString()); } return ds; } #endregion #region 执行不带参数sql语句,返回一个DataTable对象 /// /// 执行不带参数sql语句,返回一个DataTable对象 /// /// 相应的sql语句 ///
返回一个DataTable对象
public static DataTable GetDataTable(string cmdText) { SqlDataReader reader; DataTable dt = new DataTable(); try { init(); cmd = new SqlCommand(cmdText, conn); reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); dt.Load(reader); reader.Close(); } catch (Exception ex) { // throw new Exception(ex.Message.ToString()); } return dt; } #endregion #region 执行带参数的sql语句或存储过程,返回一个DataTable对象 /// /// 执行带参数的sql语句或存储过程,返回一个DataTable对象 /// /// sql语句或存储过程名 /// 命令类型 /// 参数集合 ///
返回一个DataTable对象
public static DataTable GetDataTable(string cmdText, CommandType cmdType, SqlParameter[] cmdParms) { SqlDataReader reader; DataTable dt = new DataTable(); try { init(); cmd = new SqlCommand(); SetCommand(cmd, cmdText, cmdType, cmdParms); reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); dt.Load(reader); reader.Close(); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return dt; } #endregion #region 执行不带参数sql语句,返回所影响的行数 /// /// 执行不带参数sql语句,返回所影响的行数 /// /// 增,删,改sql语句 ///
返回所影响的行数
public static int ExecuteNonQuery(string cmdText) { int count; try { init(); cmd = new SqlCommand(cmdText, conn); count = cmd.ExecuteNonQuery(); conn.Close(); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return count; } #endregion #region 执行带参数sql语句或存储过程,返回所影响的行数 /// /// 执行带参数sql语句或存储过程,返回所影响的行数 /// /// 带参数的sql语句和存储过程名 /// 命令类型 /// 参数集合 ///
返回所影响的行数
public static int ExecuteNonQuery(string cmdText, CommandType cmdType, SqlParameter[] cmdParms) { int count; try { init(); cmd = new SqlCommand(); SetCommand(cmd, cmdText, cmdType, cmdParms); count = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); conn.Close(); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return count; } #endregion #region 执行不带参数sql语句,返回一个从数据源读取数据的SqlDataReader对象 /// /// 执行不带参数sql语句,返回一个从数据源读取数据的SqlDataReader对象 /// /// 相应的sql语句 ///
返回一个从数据源读取数据的SqlDataReader对象
public static SqlDataReader ExecuteReader(string cmdText) { SqlDataReader reader; try { init(); cmd = new SqlCommand(cmdText, conn); reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return reader; } #endregion #region 执行带参数的sql语句或存储过程,返回一个从数据源读取数据的SqlDataReader对象 /// /// 执行带参数的sql语句或存储过程,返回一个从数据源读取数据的SqlDataReader对象 /// /// sql语句或存储过程名 /// 命令类型 /// 参数集合 ///
返回一个从数据源读取数据的SqlDataReader对象
public static SqlDataReader ExecuteReader(string cmdText, CommandType cmdType, SqlParameter[] cmdParms) { SqlDataReader reader; try { init(); cmd = new SqlCommand(); SetCommand(cmd, cmdText, cmdType, cmdParms); reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return reader; } #endregion #region 执行不带参数sql语句,返回结果集首行首列的值object /// /// 执行不带参数sql语句,返回结果集首行首列的值object /// /// 相应的sql语句 ///
返回结果集首行首列的值object
public static object ExecuteScalar(string cmdText) { object obj; try { init(); cmd = new SqlCommand(cmdText, conn); obj = cmd.ExecuteScalar(); conn.Close(); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return obj; } #endregion #region 执行带参数sql语句或存储过程,返回结果集首行首列的值object /// /// 执行带参数sql语句或存储过程,返回结果集首行首列的值object /// /// sql语句或存储过程名 /// 命令类型 /// 返回结果集首行首列的值object ///
public static object ExecuteScalar(string cmdText, CommandType cmdType, SqlParameter[] cmdParms) { object obj; try { init(); cmd = new SqlCommand(); SetCommand(cmd, cmdText, cmdType, cmdParms); obj = cmd.ExecuteScalar(); conn.Close(); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } return obj; } #endregion }
}
private void Form1_Load(object sender, EventArgs e) { //绑定list_order DataTable dtorder = SQLHelper.GetDataTable(@"select o.id as orderid,o.ordercode,o.opername,o.ordername,o.comname,o.createtime,o.barcode from fcwOrder o"); list_order.DataSource = dtorder; list_order.DisplayMember = "ordercode"; list_order.ValueMember = "ordername"; } private void button1_Click(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); //构造多选的order列表 foreach (object obj in list_order.SelectedItems) { DataRowView drv = (DataRowView)obj; if(drv!=null) { sb.Append("'" + drv.Row["ordercode"].ToString() + "',"); } } //为report绑定数据源 if (sb.ToString().Length > 2) { string orderwhere = sb.ToString().Substring(0, sb.ToString().Length - 1); string strsql = @"select o.id as orderid,o.ordercode,o.opername,o.ordername,o.comname,o.createtime,o.barcode, d.id as detailid,d.ordercode detailordercode,d.procode,d.proname,d.promodel,d.pronum from fcwOrder o join fcwOrderDetails d on d.ordercode=o.ordercode where o.ordercode in (" + orderwhere + ")"; DataTable dtorder2 = SQLHelper.GetDataTable(strsql); reportViewer1.LocalReport.DataSources.Clear(); reportViewer1.LocalReport.EnableExternalImages = true; reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("Order",dtorder2)); reportViewer1.LocalReport.SetParameters(new ReportParameter("para_Total",dtorder2.Rows.Count.ToString())); reportViewer1.RefreshReport(); } } }
}
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222531.html原文链接:https://javaforall.net
