数据库存取图片类

来源:互联网 发布:qq透明皮肤软件 编辑:程序博客网 时间:2024/06/13 07:03
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.Data.SqlClient;using System.Drawing;namespace WindowsFormsApplication5{    class MyImageClass    {        private static string sqlConString;//连接字符串                public static string SqlConString        {            get { return MyImageClass.sqlConString; }            set { MyImageClass.sqlConString = value; }        }       /// <summary>       /// 将图片保存至数据库       /// </summary>       /// <param name="fileName">图片全路径</param>       /// <param name="name">保存的图片名称</param>       /// <returns>返回成功或失败</returns>        public static bool SaveImage(string fileName,string name)        {            SqlConnection con = new SqlConnection(SqlConString);            SqlCommand cmd = con.CreateCommand();            FileStream fs = new FileStream(fileName, FileMode.Open);            byte[] MyData = new byte[fs.Length];            fs.Read(MyData, 0, (int)fs.Length);            fs.Close();            SqlParameter pname = new SqlParameter("@name", name);            cmd.Parameters.Add(pname);            SqlParameter pimage = new SqlParameter("@image", MyData);            cmd.Parameters.Add(pimage);            cmd.CommandText = "insert into MyTable values (@name,@image)";            con.Open();            int result = cmd.ExecuteNonQuery();            con.Close();            if (result == 1)                return true;            else                return false;        }        /// <summary>        /// 从数据库读取相应图片        /// </summary>        /// <param name="name">图片名称</param>        /// <returns>返回该图片</returns>        public static Image GetImage(string name)        {            SqlConnection con = new SqlConnection(SqlConString);            SqlCommand cmd = con.CreateCommand();            SqlParameter pname = new SqlParameter("@name", name);            cmd.Parameters.Add(pname);            cmd.CommandText = "select image from MyTable where name=@name";            con.Open();            byte[] MyData = (byte[])cmd.ExecuteScalar();            MemoryStream ms = new MemoryStream(MyData, 0, MyData.Length);            ms.Seek(0, SeekOrigin.Begin);            Image image = Image.FromStream(ms);            con.Close();            return image;        }    }}

原创粉丝点击