50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

نحوه ذخیره سازی عکس در sql

با سلام دوستان من میخواهم داخل بانک اطلاعاتیم عکس ذخیره کنم باید فیلد عکسم از چه نوع داده ای باشه چجوری از طریق سی شارپ در بانک اطلاعاتی ذخیره کنم ؟

پرسیده شده در 1394/11/06 توسط

3 پاسخ

1

هرگز خود عکس رو درون دیتابیس ذخیره نکنید. حجم دیتابیس خیلی بالا میره. یه راهکار بهتر که عموما از همین روش استفاده میشه ذخیره مسیر یا بخشی از انتهای آدرس مسیر ذخیره سازی عکس هست.

پاسخ در 1394/11/06 توسط
1

برای ذخیره سازی عکس تو دیتابیس چندین روش رو میشه استفاده کرد:

1 برای عکس های زیر 200 کیلوبایت خود عکس رو مستقیم داخل دیتابیس ذخیره کرد که خب مشکلش اینه که برای ذخیره عکس حجیم مناسب نیست

2 برای عکس های بالای 200 آدرس یا نام عکس (که باید منحصر به فرد باشه و معمولا با استفاده از guid تولید میکنن) رو داخل دیتابیس ذخیره میکنن و خود عکس رو روی هارد ذخیره میکنن که مشکلش اینه که یکپارچگی نداره یعنی شما جدا باید آدرس یا نام فایل رو در دیتابیس مدیریت کنی و خود عکس رو هم جدا روی هارد مدیریت کنی

3 از filetable استفاده میکنن که مشکلات دو روش قبل رو نداره ولی فکر میکنم توی خیلی ORMها پشتیبانی نشه و اگه ازشون استفاده کنی نمیتونی با خود ORMها باهاش کار کنی و مجبوری داخل دیتابیس مستقیم کار کنی

پاسخ در 1394/11/09 توسط
1

سلام دوست عزیز، برای ذخیره عکس می تونید از دو روش استفاده کنید:

  1. ایجاد یک فیلد از نوع varbinary و ذخیره عکس به صورت باینری در این فیلد که این مورد توصیه نمیشه
  2. زمانی که قصد دارید فایلی در در SQL Server ذخیره کنید، برای فایل یک شناسه ایجاد کنید، مثلاً یک GUID و بعد شناسه مربوطه رو در یک فیلد از نوع varchar ذخیره کنید. بعد فایل مورد نظر رو با نام شناسه ایجاد شده بر روی دیسک ذخیره کنید.
پاسخ در 1394/11/06 توسط

پاسخ شما