环境:Visual Studio 2015+SQL Server 2014
1 //引用的这几个名称空间都是.NET框架中的基础类库,用于实现一些基本的类。 2 using System; 3 using System.Collections.Generic; 4 using System.Linq; 5 using System.Text; 6 using System.Data.SqlClient;//sql客户端引用 7 using System.Data;//数据引用 8 9 namespace DALPublic 10 { 11 public class DALMethod 12 { 13 14 #region 15 16 //连接字符串(参数分别为服务器名称,数据库名,登录名,登录密码) 17 public string strConnect = @"Data Source=DESKTOP-F230K9J\SQL;Initial Catalog=THIS4医院信息管理系统数据库;User ID=sa;Password=123"; 18 19 #endregion 20 21 #region 插入、更新、删除 22 public int UpdateData(String sql, SqlParameter[] param) 23 { 24 int count = 0; 25 26 using (SqlConnection conn = new SqlConnection(strConnect)) 27 { 28 conn.Open();//打开数据库连接 29 SqlCommand cmd = new SqlCommand(sql, conn);//创建命令对象 30 cmd.CommandType = CommandType.StoredProcedure;//确认命令类型 31 cmd.Parameters.AddRange(param);//添加要执行命令的参数范围 32 count = cmd.ExecuteNonQuery();//执行SQL命令 33 conn.Close();//关闭数据库连接 34 } 35 36 return count; 37 } 38 #endregion 39 40 #region 查询数据表 41 public DataTable QueryDataTable(String sql, SqlParameter[] param) 42 { 43 DataTable dt = new DataTable();//创建datatable对象 44 using (SqlConnection conn = new SqlConnection(strConnect)) 45 { 46 conn.Open(); 47 SqlDataAdapter da = new SqlDataAdapter(sql, conn); 48 da.SelectCommand.CommandType = CommandType.StoredProcedure; 49 da.SelectCommand.Parameters.AddRange(param); 50 da.Fill(dt); 51 conn.Close(); 52 } 53 54 return dt; 55 } 56 #endregion 57 58 #region 二进制文件查询方法 59 public byte[] QueryDataByte(String sql, SqlParameter[] param) 60 { 61 using (SqlConnection conn = new SqlConnection(strConnect)) 62 { 63 conn.Open();//打开连接 64 SqlDataReader dr = null;//初始化数据读取器 65 SqlCommand cmd = new SqlCommand(sql, conn);//创建命令对象 66 cmd.CommandType = CommandType.StoredProcedure;//设置命令类型 67 cmd.Parameters.AddRange(param);//把参数加进命令对象 68 dr = cmd.ExecuteReader();//启动dr 69 byte[] File = null;//初始化byte 70 if (dr.Read())//执行把二进制流加进byte[]中 71 { 72 File = (byte[])dr[0]; 73 } 74 dr.Close();//关闭数据读取器 75 conn.Close();//关闭连接 76 return File; 77 } 78 } 79 #endregion 80 81 } 82 }