急!!!!三层模式下图像字段无法更新!200分的问题!!!
C++Builder6+SQL Server2000,三层模式下,图像字段无法更新到数据库,其他字段都可正常更新到数据库中。在客户端,图像字段可正常编辑更改。
(注:在两层结构能正常对图像字段进行读写操作。)
程序结构如下:
应用程序服务器端:使用ADOConnection、ADODataSet、DataSetProvider组件。
客户端:使用DCOMConnection、ClientDataSet组件。用DBImage自动获取并显示图像字段;用OpenDialog与Image加载图片,作为编辑更改的来源。
部分程序代码如下:
......
CustomerData->ClientDataSet1->Edit();
......
CustomerData->ClientDataSet1->FieldByName("相片")->Assign(Image1->Picture);//用此语句在客户端,图像字段可正常更改
......
CustomerData->ClientDataSet1->Post();
......
//更新数据库
if(CustomerData->ClientDataSet1->ChangeCount>0)
CustomerData->ClientDataSet1->ApplyUpdates(-1);
使用过在CSDN论谈中提及的方法(如:TBlobField、TADOBlobStream、TMemoryStream、TFileStream等等),都不行。
请各位高手赐教!高分答谢,分数可再加。