[求助]asp.net, mysql数据库中存取图片问题,高手请进_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2476 | 回复: 0   主题: [求助]asp.net, mysql数据库中存取图片问题,高手请进        下一篇 
solo9867
注册用户
等级:新兵
经验:61
发帖:71
精华:0
注册:2011-12-15
状态:离线
发送短消息息给solo9867 加好友    发送短消息息给solo9867 发消息
发表于: IP:您无权察看 2014-11-17 14:37:59 | [全部帖] [楼主帖] 楼主

在mysql中有一个表   

CREATE
TABLE db_image
(
Id int(11) NOT NULL AUTO_INCREMENT,
FImage longblob,
PRIMARY KEY USING BTREE (Id)
)
ENGINE= InnoDB DEFAULT CHARSET= gb2312
c#中获取某个图片,然后写入mysql中的时候,image字段总是null。   


  我使用了mysql   connector/net   

C# code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data;
using MySql.Data.Types;
using MySql.Data.MySqlClient;
using System.IO;
using System.Data;
public partial class UpPhoto : System.Web.UI.Page
{
      protected void Page_Load(object sender, EventArgs e)
      {
      }
      protected void btnAdd_Click(object sender, EventArgs e)
      {
            //获得图象并把图象转换为byte[] 
            HttpPostedFile upPhoto = UpPhoto1.PostedFile;
            int upPhotoLength = upPhoto.ContentLength;
            byte[] PhotoArray = new Byte[upPhotoLength];
            Stream PhotoStream = upPhoto.InputStream;
            PhotoStream.Read(PhotoArray, 0, upPhotoLength);
            //连接数据库 
            MySqlConnection conn = new MySqlConnection();
            conn.ConnectionString = "User Id=sa;Host=localhost;Database=test";
            string strSql=string.Format("Insert into db_image(FImage) values(@FImage)");
            MySqlCommand cmd = new MySqlCommand(strSql, conn);
            cmd.Parameters.Add("@FImage", MySqlDbType.Byte);
            cmd.Parameters["@FImage"].Value = PhotoArray;
            conn.Open();
            try
            {
                  cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                  throw ex;
            }
            finally
            {
                  conn.Close();
            }
      }
      protected void btnShow_Click(object sender, EventArgs e)
      {
            MySqlConnection conn = new MySqlConnection();
            conn.ConnectionString = "User Id=sa;Host=localhost;Database=test";
            string strSql = "select * from db_image where id=1";//这里假设获取id为2的图片 
            MySqlCommand cmd = new MySqlCommand(strSql, conn);
            conn.Open();
            MySqlDataReader reader = cmd.ExecuteReader();
            reader.Read();
            Response.ContentType = "application/octet-stream";
            Response.BinaryWrite((Byte[])reader["FImage"]);
            Response.End();
            reader.Close();
      }
}


--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论