怎么用C++语言将图片存入MYSQL数据库?
我每次指纹扫描后会产生一个指纹图像c:\\fingerprint.bmp,怎么把他保存到数据库test中的表指纹中?保存后然后下一个图像保存时自动排到表中下一列。
[解决办法]
如果图像不大的话,可以在MySQL中用Blob字段来保存,如果图像很大,或者数量较多,一般都是保存成文件,然后在数据库中存放图像文件的地址
[解决办法]
http://blog.csdn.net/qq752923276/article/details/6407005
图片插入SQLServer示例
[解决办法]
参考 http://www.zxbc.cn/html/20070419/2030.html
[解决办法]
c++builder对数据库中BLOB字段读写 .
2009-02-17 08:38 255人阅读 评论(0) 收藏 编辑 删除
SQL Server2000 我用的image 类型
//存储
TBlobField *blob_pic=(TBlobField *)UserMod->TInsert->FieldByName("IMAGE");
try
{
blob_pic->LoadFromFile(app_path+"//temp//temp.jpg");
}
catch(...)
{
ShowMessage("图像存盘失败!");
}
UserMod->TInsert->Post();
UserMod->TInsert->Refresh();
}
//读取
TBlobField *blob_pic=(TBlobField *)DBGrid4->DataSource->DataSet->FieldByName("IMAGE");
try
{
blob_pic->SaveToFile(app_path+"//temp//temp1.jpg");
Image9->Picture->LoadFromFile(app_path+"//temp//temp1.jpg");
}
catch(...)
{
ShowMessage("图像读取失败!");
}
delete blob_pic;
//--------struct数据存取---------------------------------------
//结构体定义:
typedef struct
{
unsigned short Weight;
unsigned short Dis;
char Type;
char Speed;
}VehAxle;
VehAxle Axle[15],PrintAxle[15];
//---------------------------------
//数据写入
C/C++ code
TBlobField *BlobField=(TBlobField *) DataMod->InsertTable->FieldByName("Veh_Detail");
//BlobField->AsString=*sp;
//delete sp;
FILE *fp = fopen("save.dat","wb");
fwrite(&Axle,sizeof(VehAxle)*15,1,fp);
//fread(&Axle,sizeof(VehAxle)*15,8,fp);
fclose(fp);
try
{
BlobField->LoadFromFile("save.dat");
}
catch(...)
{
}
//数据读取
C/C++ code
TBlobField *blob_file=(TBlobField *)Veh_DBGrid->DataSource->DataSet->FieldByName("Veh_Detail");
try
{
blob_file->SaveToFile("read.dat");
Sleep(10);
FILE *fp=fopen("read.dat","r+b");
fread(&PrintAxle,sizeof(VehAxle)*15,1,fp);
fclose(fp);
}
catch(...)
{
//
}