社区
MySQL
帖子详情
如何用mysql提供的C API实现文件的存取?
星之瀚海
2003-06-12 03:20:36
我已经用mysql提供的C API实现了一般数据的存取,但对于其提供的blob,longblob如何存取,一直没有办法解决,那位大侠能不能帮助解决一下,似乎文档中这些资料也不够详细,另外开贴给分
...全文
105
5
打赏
收藏
如何用mysql提供的C API实现文件的存取?
我已经用mysql提供的C API实现了一般数据的存取,但对于其提供的blob,longblob如何存取,一直没有办法解决,那位大侠能不能帮助解决一下,似乎文档中这些资料也不够详细,另外开贴给分
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shuixin13
2003-06-20
打赏
举报
回复
呵呵,
最简单的办法
SELECT Col_Blob FROM tA INTO DUMPFILE "C:/123.ZIP"
如果使用 INTO DUMPFILE 代替 INTO OUTFILE,MySQL 将在文件中只写一行,没任何列或行端接和任何转义。如果你希望存储一个 blob 列到文件中,这是非常有用的。
当然最好是通过 流操作来实现
joachern
2003-06-20
打赏
举报
回复
up i/o 好!
星之瀚海
2003-06-16
打赏
举报
回复
那怎么读出来?
chensiping
2003-06-16
打赏
举报
回复
paul dubois 的mysql网络数据库指南就有(机械工业出版社)
把源码贴出来,省得你查了.
#include <windows.h>
#include <stdio.h>
#include <string.h>
#include <mysql.h>
void load_image (MYSQL *conn, FILE *f)
{
char query[1024*200], buf[1024*100], *p;
unsigned long from_len;
sprintf(query,"insert into blobtest (blobtest) values ( \'" );
p = query + strlen (query);
while ((from_len = fread (buf, 1, sizeof (buf), f)) > 0)
{
if (p + (2*from_len) + 3 > query + sizeof (query))
{
printf("image too big");
return ;
}
p += mysql_real_escape_string (conn, p, buf, from_len);
}
*p++ = '\'';
*p++ = ')';
strcpy(p," where img_id=1");
mysql_real_query (conn, query, (unsigned long) (p- query));
}
void main ()
{
char *opt_host_name = "192.168.1.253";
char *opt_user_name = "root";
char *opt_password = NULL;
unsigned int opt_port_num = 3306;
char *opt_socket_name = NULL;
char *opt_db_name = "test";
unsigned int opt_flags = 0;
MYSQL *conn;
FILE *f;
conn = mysql_init (NULL);
mysql_real_connect (conn, opt_host_name, opt_user_name, opt_password,
opt_db_name, opt_port_num, opt_socket_name, opt_flags);
if ((f = fopen ("c:/test1.JPG", "rb")) == NULL)
{
printf("file open eror!");
return ;
}
load_image (conn, f);
fclose(f);
mysql_close (conn);
return;
}
shuixin13
2003-06-12
打赏
举报
回复
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=71276
MYSQL
5.6 怎样处理没有提交/回卷(COMMIT / ROLLBACK) 6
MySQL
存取
权限系统 6.1 权限系统做什么 6.2
MySQL
用户名和口令 6.3 与
MySQL
服务器连接 6.4 使你的口令安全 6.5
MySQL
提供
的权限 ...
MySQL
中文参考手册.chm
5.6 怎样处理没有提交/回卷(COMMIT / ROLLBACK) 6
MySQL
存取
权限系统 6.1 权限系统做什么 6.2
MySQL
用户名和口令 6.3 与
MySQL
服务器连接 6.4 使你的口令安全 6.5
MySQL
提供
的...
MySQL
中文参考手册
+ 4.12.5 用 SSH 从 Win32 连接一个远程
MySQL
+ 4.12.6
MySQL
-Win32与Unix
MySQL
比较 o 4.13 OS/2 注意事项 o 4.14 TcX 二进制代码 o 4.15 安装后期(post-installation)的设置与测试 + 4.15.1 运行
mysql
_...
Windows 下 使用
MySQL
C
API
存取
BLOB 数据
MySQL
C
API
封装使用,msgpack 库使用
c
mysql
api
_
MySQL
C
API
C
API
代码是随
MySQL
分发的,它被包含在
mysql
client库且允许C程序
存取
一个数据库。在
MySQL
源代码分发中的很多客户是用C编写的。如果你正在寻找演示怎样使用C
API
的例子,看一下这些客户程序。大多数其他客户
API
...
MySQL
56,681
社区成员
56,709
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章