C# SQLserver数据库图片存取

   #region 数据库图片存取
        /// <summary>
        /// <strong><span style="color:#ff0000;">导入图片到数据库</span></strong>
        /// </summary>
        /// <param name="filePath"></param>
        public void Import(string filePath)
        {
            string fileName = filePath.Substring(filePath.LastIndexOf(@"\")+1, filePath.LastIndexOf(".")-filePath.LastIndexOf(@"\")-1); 
            FileStream fileStream = new FileStream(filePath, FileMode.Open);
            byte[] imageBytes = new byte[fileStream.Length];
            BinaryReader binaryReader = new BinaryReader(fileStream);
            imageBytes = binaryReader.ReadBytes(Convert.ToInt32(fileStream.Length));

            SqlConnection sqlConnection = new SqlConnection(@"data source=PANLEE-PC\MSSQLSERVER_2;initial catalog=DBImage;integrated security=true");
            sqlConnection.Open();
            SqlCommand sqlCommand=new SqlCommand();
            sqlCommand.Connection = sqlConnection;
            try
            {
                string sqlCreate = @"Create Table Portraits(
                                   学号 varchar(50),
                                   照片 image,
                                   )";
                sqlCommand.CommandText = sqlCreate;
                sqlCommand.ExecuteNonQuery();
            }
            catch { }

            sqlCommand.CommandText= "insert into Portraits (学号, 照片) values(@ID,@Image)";
            sqlCommand.Parameters.Add("Image", SqlDbType.Image);
            sqlCommand.Parameters.Add("ID", SqlDbType.VarChar);
            sqlCommand.Parameters["ID"].Value = fileName;
            sqlCommand.Parameters["Image"].Value = imageBytes;
            sqlCommand.ExecuteNonQuery();
            sqlConnection.Close();
        }
      
        /// <summary>
        //<strong>/<span style="color:#ff0000;">导出图片</span></strong>
        /// </summary>
        /// <param name="SID"></param>
        /// <returns>bitmap</returns>
        public Bitmap Export(string SID)
        {
            byte[] imagebytes = null;
            SqlConnection sqlConnection = new SqlConnection(@"data source=PANLEE-PC\MSSQLSERVER_2;initial catalog=DBImage;integrated security=true");
            sqlConnection.Open();
            SqlCommand sqlCommand = new SqlCommand("select 照片 from Portraits where 学号=@ID", sqlConnection);
            sqlCommand.Parameters.Add("ID", SqlDbType.VarChar);
            sqlCommand.Parameters["ID"].Value = SID;
            SqlDataReader sqlDataReader = sqlCommand.ExecuteReader();
            while (sqlDataReader.Read())
            {
                imagebytes = (byte[])sqlDataReader.GetValue(0);
            }
            sqlDataReader.Close();
            sqlCommand.Clone();
            sqlConnection.Close();
            MemoryStream ms = new MemoryStream(imagebytes);
            Bitmap bitmap = new Bitmap(ms);
            return bitmap;
        }
        #endregion

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值