c mysql 二进制图片,想把二进制数据插入到MYSQL库里,字段为MediumBLOB类型.(存的图片)解决思路...
当前位置:我的异常网» VB » 想把二进制数据插入到MYSQL库里,字段为MediumBLOB类
想把二进制数据插入到MYSQL库里,字段为MediumBLOB类型.(存的图片)解决思路
www.myexceptions.net 网友分享于:2013-01-03 浏览:281次
想把二进制数据插入到MYSQL库里,字段为MediumBLOB类型.(存的图片)
查到的资料:
如果你想要把二进制数据插入到一个字符类型的字段中(例如BLOB),下列字符必须由转义序列表示:
NUL
ASCII 0,你应该用 “\0”(一个反斜线和一个ASCII “0”字符)表示它。
\
ASCII 92,反斜线。需要用 “\\” 表示。
'
ASCII 39,单引号。需要用 “\ '” 表示。
"
ASCII 34,双引号。需要用 “\ "” 表示。
-----------------------------------
问题是:请问我如何转义二进制数据.下面里面看不出来有什么引号之类的..
二进制数据是这样格式:????āā怀怀 ????????????????????┝???‖???????┰?H???????????????????????????????????????????!?ā?āā ā????????????ā???????慑??脲??????戳色???┚??????????呓噕塗婙摣晥桧橩瑳癵硷穹蒃蚅袇誉鎒閔鞖馘???????????????????????笠????āāāā ā?????????????w???ㄡ?允愇?㈢?????刳?牢??????????????半啔坖奘捚敤杦楨獪畴睶祸艺蒃蚅袇誉鎒閔鞖馘???????????????????????笠?ú?????????薿?饠???????棈????卺???罊?櫎???????坳??汖???駹??鋏???}?????龗???貦?蔽蠟..........
------解决方案--------------------
参考:http://bbs.xplore.cn/viewthread.php?tid=2507
------解决方案--------------------
我以前回答过多次此类问题,但2006年的贴子不能查到了。
你自己修改一下.
VB把文件存入数据库IMAGE字段
Sub Savepic(FileName As String, IndexNumber As Long)
Dim DcnNWind As New ADODB.Connection
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
DcnNWind.CursorLocation = adUseClient
DcnNWind.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=CUSTOM;Data Source=SERVER "
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
rs.Open "CustomInfo ", DcnNWind, , adCmdTable
rs.Move (IndexNumber)
Call FileToBlob(rs.Fields( "Image "), FileName, FileLen(FileName))
rs.UpdateBatch adAffectCurrent
End Sub
Private Sub FileToBlob(fld As ADODB.Field, FileName As String, Optional ChunkSize As Long )
Dim fnum As Integer, bytesLeft As Long, bytes As Long
Dim tmp() As Byte
If (fld.Attributes And adFldLong) = 0 Then
Err.Raise 1001, , "Field doesn 't support the GetChunk method. "
End If
fnum = FreeFile
Open FileName For Binary As fnum
bytesLeft = LOF(fnum)
Do While bytesLeft
bytes = bytesLeft
If bytes > ChunkSize Then bytes = ChunkSize
ReDim tmp(1 To bytes) As Byte
Get #1, , tmp
fld.AppendChunk tmp
bytesLeft = bytesLeft - bytes
Loop
Close #fnum
End Sub
VB把文件从IMAGE字段中读到文件中。
Sub loadpic(IndexNumber As Long)
Dim DcnNWind As New ADODB.Connection
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
DcnNWind.CursorLocation = adUseClient
DcnNWind.Open "Provider=SQLOLEDB.1;Integrated Security=SSI;Persist Security Info=False;Initial Catalog=CUSTOM;Data Source=SERVER "
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
rs.Open "CustomInfo ", DcnNWind, , adCmdTable
rs.Move (IndexNumber)
Call BlobToFile(rs.Fields( "Image "), "c:\windows\temp\tmp.bmp ", rs.Fields( "Image ").ActualSize)
End Sub
Private Sub BlobToFile(fld As ADODB.Field, FileName As String, Optional ChunkSize As Long )
Dim fnum As Integer, bytesLeft As Long, bytes As Long
Dim tmp() As Byte
If (fld.Attributes And adFldLong) = 0 Then
Err.Raise 1001, , "Field doesn 't support the GetChunk method. "
End If
If Dir$(FileName) <> " " Then Kill FileName
fnum = FreeFile
Open FileName For Binary As fnum
bytesLeft = fld.ActualSize
Do While bytesLeft
bytes = bytesLeft
If bytes > ChunkSize Then bytes = ChunkSize
文章评论
c mysql 二进制图片,想把二进制数据插入到MYSQL库里,字段为MediumBLOB类型.(存的图片)解决思路...相关推荐
- MySql中把一个表的数据插入到另一个表中的实现代码--转
MySql中把一个表的数据插入到另一个表中的实现代码 司的一个项目,做报表--要关联的表结构比较多,最后决定把要用的数据集合到一张新表中,需要用到以下的sql语法......分享下: web开发中,我 ...
- python数据导入hive_Python操作HIve,将数据插入到Mysql
Python操作HIve,将数据插入到Mysql import sys from hive_service import ThriftHive from hive_service.ttypes imp ...
- influxdb 插入数据_脚本采集数据插入到influxdb数据库里
#!/bin/bash # 定时收集java服务metrics # curl http://10.7.16.42:6301/metrics demo # 参数: post_influxdb_write ...
- MySQL必知必会:数据插入(Insert)
本篇文章介绍如何使用Insert语句将数据插入到数据库. 数据插入 增删改查是数据库最常用的4个命令,插入算是第二常用,第一是SELECT.插入数据的方式大概有4种 插入完整的行 插入行的一部分 插入 ...
- mysql清空数据库中所有表数据_清空mysql数据库所有表数据
1,查看数据库状态 及启动停止 /etc/init.d/mysqld status/etc/init.d/mysqld start/etc/init.d/mysqld stop 2,给用户配置初始密码 ...
- mysql新增列并同时增加数据_图解MySQL | [原理解析] MySQL 为表添加列 是怎么quot;立刻quot;完成的...
在上一期图解 图解MySQL | MySQL DDL为什么成本高?中,我们介绍了: 传统情况下,为表添加列需要对表进行重建 腾讯团队为 MySQL 引入了 Instant Add Column 的方案 ...
- 用Python将excel数据插入到MySQL报错(1265, Data truncated for column ‘num‘ at row 1)
作为一个小白,这是第一篇帖子. 希望记录自己一路走来遇到的问题,也希望大佬指正. 一.背景: 用Python将数据逐行插入到MySQL. 二.问题: 但在python运行时发现总是报错(1265, D ...
- 如何把获取的JSON数据插入到MySQL中
自己在官网上搞数据存为JSON 然后插入到MySQL里 1 直接爬官网的数据 首先创建一个空的用来存放json文件的文件 // 需求: (1) 读取页面的html // (2) 把数据存入数据库,或存 ...
- MySQL将一张表的数据插入到另一张表
(1)当两张表字段相同,使用以下sql: 将tbl_rooms表数据插入到 db_gbwk.tbl_rooms表中: INSERT INTO db_gbwk.tbl_rooms SELECT * FR ...
最新文章
- 如何及时获得AI顶尖科研团队的最新论文与进展?只需一份AI内参!
- 理解 React Hooks
- 分布式缓存应用(转载的)
- Ubuntu 运行Asp.net MVC3
- SPI单片机发送ARM接收
- mysql 安全删除_mysql的binlog安全删除的一种方法
- Linux之特殊的环境变量IFS以及如何删除带有空格的目录
- 文案一方面需要创意,但一方面不需要过分沉溺于创意
- SEO内容构建流程,SEO内容建设策略有哪些?
- anaconda版本选择_Anaconda简介
- 一文带你彻底了解电子灌封(灌胶)工艺技术
- 使用Visual Studio编译Geos
- 超强媒体阵容护航,第一届区块链技术及应用峰会(BTA)·中国引爆开年狂潮
- 数据库迁移 软件Spoon Kettle环境搭配(本人踩过的坑)
- 用文件保存游戏服务器数据恢复,免越狱 教你恢复游戏数据存档
- 程序人生——苏嵌第三天
- a烟台计算机哪个学校好,烟台多所学校有新消息,家长速看!
- 汉诺塔(Tower of Hanoi)--------递归思路
- python用哪种字体比较好_你在用哪种编程字体?
- python打开一个不存在的文件报错,python中的文件操作(一)