zoukankan      html  css  js  c++  java
  • C#从SQL server数据库中读取l图片和存入图片[转]

    C#从SQL server数据库中读取l图片和存入图片
    本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下:
    
        private void button1_Click(object sender, EventArgs e)
    
            {
    
              openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";
    
                if(openFileDialog1.ShowDialog()==DialogResult.OK)
    
                {
    
                  string fullpath =openFileDialog1.FileName;//文件路径
    
                  FileStream fs = new FileStream(fullpath, FileMode.Open);
    
                    byte[] imagebytes =new byte[fs.Length];
    
                    BinaryReader br = new BinaryReader(fs);
    
                    imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));
    
                    //打开数据库
    
                    SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05");
    
                    con.Open();
    
                    SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con);
    
                    com.Parameters.Add("ImageList", SqlDbType.Image);
    
                    com.Parameters["ImageList"].Value = imagebytes;
    
                   com.ExecuteNonQuery();
    
                   con.Close();
    
                 }    
    
    }
    
    本实例主要介绍如何从数据库中把图片读出来。实现本实例主要是利用SqlDataReader从数据库中把Image字段值读出来,赋给一个byte[]字节数组,然后使用MemoryStream类与Bitmap把图片读取出来。主要代码如下:
    
        private void button1_Click(object sender, EventArgs e)
    
            {
    
                     byte[] imagebytes = null;
    
                    //打开数据库
    
                SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05");
    
                    con.Open();
    
                    SqlCommand com = new SqlCommand("select top 1* from tb_09", con);
    
                    SqlDataReader dr = com.ExecuteReader();
    
                    while (dr.Read())
    
                    {
    
                        imagebytes = (byte[])dr.GetValue(1);
    
                    }
    
                    dr.Close();
    
                    com.Clone();
    
                    con.Close();
    
                    MemoryStream ms = new MemoryStream(imagebytes);
    
                    Bitmap bmpt = new Bitmap(ms);
    
                    pictureBox1.Image = bmpt;
    
            }
    
    本实例主要介绍如何只允许输入指定图片格式。用OpenFileDialog控件打开图片文件,只要将OpenFileDialog控件的Filter属性指定为特定的图片格式即可。例如,打开.bmp文件的图片,主要代码如下:
    
    this.openFileDialog1.Filter = "bmp文件(*.bmp)|*.bmp";
    
    在用pictureBox控件输入图片时,要想统一图片大小,只需把控件的SizeMode属性值设为StretchImage即可,StretchImage值表示图像的大小将调整为控件的大小。这样,图片的大小就统一了。
    

      

  • 相关阅读:
    2018爆零记第二弹之day0
    2018NOIP爆0记第一弹
    图论中偶然发现的一个问题
    [SCOI2010]序列操作
    CF 675E Trains and Statistic
    CF100015C
    Python 使用 NLTK 实现简单情感分析--Twitter(推特)分析
    pipenv -- python 搭建虚拟环境
    Python
    ElasticSearch 入门教程
  • 原文地址:https://www.cnblogs.com/nymz/p/14216559.html
Copyright © 2011-2022 走看看