PDA

View Full Version : مشکل در ذخیره عکس هنگامی که Relation بین جداول هست؟



SYNDROME
چهارشنبه 30 خرداد 1386, 19:00 عصر
با سلام
بنده با دستور زیر یک عکس را در جدول خودم ذخیره می کنم.


Jpeg := nil;
Stream := nil;
Jpeg := TJPEGImage.Create;
Jpeg.LoadFromFile(FileName);
Stream := TMemoryStream.Create;
Jpeg.SaveToStream(Stream);
Stream.Position := 0;
TBlobField(ADO.FieldByName(FieldName)).LoadFromStr eam(Stream);

هم زمانی که رکورد جدید می سازم و هم زمانی که رکورد را ویرایش می کنی کار درست انجام می شود.
ولی زمانی که این جدول کلید من و جدول دیگر کلید خارجی من است اگر رکورد جدید ایجاد کنم باز هم مشکلی نیست.
ولی اگر رکوردهای قبلی را ویرایش کنم پیغام خطا زیر نمایش می دهد.Cannot Update Text ,Ntext,Image OR Image Column and a Clistring Key At The Same Time

m-khorsandi
چهارشنبه 30 خرداد 1386, 21:34 عصر
وقتی میخوای یک فیلد Primary Key رو که Clustered index هم هست به همراه یک فیلد(حداقل) از نوع Image, Text ویرایش کنی باید دو تا کوئری Update بنویسی(البته این از معنی پیغام خطا هم مشخص هست)، یکی برای کلید و یکی هم برای سایر فیلدها.
راه دیگه‌ای هم داری که میشه فیلد کلید را از Clustered index خارج کنی تا همونطوری که انتظار داری، عمل کنه یعنی با یک کوئری، ولی راه حل خوبی نیست.

SYNDROME
چهارشنبه 30 خرداد 1386, 22:27 عصر
با سلام
محمد جان باز هم دستت درد نکنه.
در زمانی که ویرایش می کردم هم کلید و هم Image را با هم ویرایش می کردم.
ولی زمانی که در دو مرحله عمل ویرایش را انجام می دهم مشکل حل می شود.


ADO.Edit;
......
ADO.Post;
ADO.Edit;
//Image Edit
ADO.Post;

باز هم متشکر از راهنمایی شما.